Thonny 3.3

Develops and observes software on Python
4.0  (4 votes)
3.3.3 (See all)

Work with the elements of the Python programming language in the integrated development environment for beginners. Enter simple commands and preview changes in the code, access hotkeys and switch between components quickly, check all function calls, etc.

Thonny is an integrated development environment specifically intended for beginners and students of Python programming language. Its user interface is characterized by simplicity. However, it is not as simple as those found in text editors. Nor is it as complex as those of other IDEs, generally used by professionals. Thus, Thonny has a panel where the code is edited, another one to visualize the assigned variables, and finally, a space to execute the code. It is also very convenient to have a debugger to detect possible errors in the code.

Thonny's greatest strengths derive from its ability to promote learning. In this sense, it is excellent that it can perfectly explain the structure of a program, including function calls. Moreover, it is very easy to install as Python is pre-packaged in the IDE. The same is true regarding the installation of third party packages, which are very easy to add.

In general Thonny contains several features that you can find in other similar yet more sophisticated products, for example, expression evaluation, syntax error detection, distinction between local and global names and automatic code completion.

To conclude, it feels logical that Thonny lacks some of the features present in IDEs intended for professional programmers, such as support for other languages. Still, there is nothing to prevent you from using it comfortably even if you are an advanced programmer. Fortunately, Thonny is free of charge and available for multiple platforms.

Pedro Castro
Editor rating:

Review summary


  • Cross platform
  • Step-by-step debugger
  • Prebuilt Python
  • Supports learning
  • Expression evaluation
  • Syntax error detection
  • Distinction between local and global names
  • Automatic code completion


  • No support for programming languages other than Python
Info updated on: