Fork me on GitHub

Thonny 4 is dedicated to Ukraine fighting the Russian invasion.
πŸ‡ΊπŸ‡¦ Please support Ukraine! πŸ‡ΊπŸ‡¦

Download icon Download version 3.3.13 for
Windows  β€’  Mac  β€’ 

The latest version:

Binary bundle for PC (Thonny+Python):
bash <(wget -O -

With pip:
pip3 install thonny

With Flatpak:
flatpak install org.thonny.Thonny

Distro packages (may not be the latest version):

Debian, Raspbian, Ubuntu, Mint and others:
sudo apt install thonny

sudo dnf install thonny

For the curious: 4.0.0b3


Python IDE for beginners

Main screenshot


Easy to get started. Thonny comes with Python 3.7 built in, so just one simple installer is needed and you're ready to learn programming. (You can also use a separate Python installation, if necessary.) The initial user interface is stripped of all features that may distract beginners.

Initial layout

No-hassle variables. Once you're done with hello-worlds, select View β†’ Variables and see how your programs and shell commands affect Python variables.

Variables table

Simple debugger. Just press Ctrl+F5 instead of F5 and you can run your programs step-by-step, no breakpoints needed. Press F6 for a big step and F7 for a small step. Steps follow program structure, not just code lines.

Stepping through statements

Step through expression evaluation. If you use small steps, then you can even see how Python evaluates your expressions. You can think of this light-blue box as a piece of paper where Python replaces subexpressions with their values, piece-by-piece.

Visualization of expression evaluation

Faithful representation of function calls. Stepping into a function call opens a new window with separate local variables table and code pointer. Good understanding of how function calls work is especially important for understanding recursion.

Visualization of call frames

Highlights syntax errors. Unclosed quotes and parentheses are the most common beginners' syntax errors. Thonny's editor makes these easy to spot.

Visualization of syntax errors

Explains scopes. Highlighting variable occurrences reminds you that the same name doesn't always mean the same variable and helps spotting typos. Local variables are visually distinguished from globals.

Local and global names are visually distinguished

Mode for explaining references. Variables are initially presented according to simplified model (name β†’ value) but you can switch to more realistic model (name β†’ address/id β†’ value).

Variables table vs values table

Code completion. Students can explore APIs with the help of code completion.

Code completion

Beginner friendly system shell. Select Tools β†’ Open system shell to install extra packages or learn handling Python on command line. PATH and conflicts with other Python interpreters are taken care of by Thonny.

System shell prepared for Python commands

Simple and clean pip GUI. Select Tools β†’ Manage packages for even easier installation of 3rd party packages.

System shell prepared for Python commands



From 2014 to 2018 the main development of Thonny took place in Institute of Computer Science of University of Tartu, Estonia.

Since September 2018 development of Thonny is partially supported by Cybernetica AS.

Development of several features in Thonny 3.0 and 3.3 was proposed and supported by Raspberry Pi Foundation.

We are also grateful for the help of several contributors from the open-source community around the world.

Instructions & downloads

Latest stable releases are linked in the download box at the top of this page. Older releases and prereleases can be found at


Thonny has simple infrastructure for extensions.

These are some known Thonny plug-ins:

Note that Thonny developers are not responsible for these plug-ins!

Contact & News