HOME

TheInfoList



OR:

Thonny ( ) is a
free and open-source Free and open-source software (FOSS) is software available under a Software license, license that grants users the right to use, modify, and distribute the software modified or not to everyone free of charge. FOSS is an inclusive umbrella term ...
integrated development environment An integrated development environment (IDE) is a Application software, software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, an ...
for
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (prog ...
that is designed for beginners. It was created by Aivar Annamaa, an Estonian programmer. It supports different ways of stepping through code, step-by-step expression evaluation, detailed visualization of the call stack and a mode for explaining the concepts of references and heap.


Features

*
Line number In computing, a line number is a method used to specify a particular sequence of characters in a text file. The most common method of assigning numbers to lines is to assign every line a unique number, starting at 1 for the first line, and increm ...
s * Statement stepping without breakpoints * Live variables during debugging * Stepping through evaluation of the expressions (expressions get replaced by their values) * Separate windows for executing function calls (for explaining local variables and call stack) * Variables and memory can be explained either by using simplified model (name → value) or by using more realistic model (name → address/id → value) * Simple pip GUI * Support for
CPython CPython is the reference implementation of the Python programming language. Written in C and Python, CPython is the default and most widely used implementation of the Python language. CPython can be defined as both an interpreter and a comp ...
and
MicroPython MicroPython is a software implementation of a programming language largely compatible with Python 3, written in C, that is optimized to run on a microcontroller. MicroPython consists of a Python compiler to bytecode and a runtime interpreter o ...
* Support for running and managing files on a remote machine via
SSH The Secure Shell Protocol (SSH Protocol) is a cryptographic network protocol for operating network services securely over an unsecured network. Its most notable applications are remote login and command-line execution. SSH was designed for Un ...
* Possibility to log user actions for replaying or analyzing the programming process


Availability

The program works on Windows, macOS and Linux. It is available as a binary bundle including the recent Python interpreter or pip-installable package. It can be installed via the operating-system package manager on Debian, Raspberry Pi, Ubuntu, and Fedora. It is written in Python with the Tk widget toolkit using
Tkinter Tkinter is a binding to the Tk GUI toolkit for Python. It is the standard Python interface to the Tk GUI toolkit, and is Python's ''de facto'' standard GUI. Tkinter is included with standard Linux, Microsoft Windows and macOS installs of Pyth ...
binding.


Reception

Thonny has received favorable reviews from Python and computer science education communities. It has been a recommended tool in several programming
MOOCs A massive open online course (MOOC ) or an open online course is an online course aimed at unlimited participation and open access via the Web. In addition to traditional course materials, such as filmed lectures, readings, and problem sets, ma ...
. Since June 2017 it has been included by default in the
Raspberry Pi Raspberry Pi ( ) is a series of small single-board computers (SBCs) developed in the United Kingdom by the Raspberry Pi Foundation in collaboration with Broadcom Inc., Broadcom. To commercialize the product and support its growing demand, the ...
's official operating system distribution
Raspberry Pi OS Raspberry Pi OS is a Unix-like operating system developed for the Raspberry Pi line of single-board computers. Based on Debian, a Linux distribution, it is maintained by Raspberry Pi Holdings and optimized for Raspberry Pi hardware, with low memo ...
.


See also

* List of integrated development environments for Python programming language *
Toolbox A toolbox (also called toolkit, tool chest or workbox) is a box to organize, carry, and protect the owner's tools. They could be used for trade, a hobby or Do it yourself, DIY, and their contents vary with the craft. Toolbox are made of strong ...
* Kojo * JUDO * BASIC-256 *
Microsoft Small Basic Microsoft Small Basic is a programming language, interpreter and associated IDE. Microsoft's simplified variant of BASIC, it is designed to help students who have learnt visual programming languages such as Scratch learn text-based programmin ...


References


External links

* * {{Integrated development environments Computer science education Free integrated development environments for Python Free software that uses Tk (software) Pedagogic integrated development environments Python (programming language) software Software using the MIT license