OS and editor#
You can choose any OS and any editor but it is better to use Python version 3.7 because book uses this version. All examples in book were run on Debian, other operating systems may have a slightly different output. You can use Linux, macOS or Windows to perform tasks from a book.
You can select any text editor or IDE that supports Python. Generally, working with Python requires minimal editor settings and often the editor recognizes Python by default.
Thonny#
Great editor for beginners:
supports Python 3.10 and can install both itself and Python 3.10 at once
work with different versions of Python and virtual environments is conveniently done, you can select the version very clearly and this is not hidden in the depths of the settings
multiple debugger options
the nicer debugger is simply indispensable for beginners to learn Python, it shows step by step how each expression is evaluated in Python
the faster debugger generally works like a standard debugger
there are all the standard goodies with autocomplete, highlights, and so on (some may need to be enabled in the settings)
conveniently highlights unclosed quotes/brackets
supports Windows, Mac, Linux
user-friendly interface and it is possible to add/remove sections of the interface at will
Mu editor#
Mu editor is a simple Python editor for beginner programmers.
Mu has clean and simple user interface. It has important features such as checking code against PEP 8 and debugger. Plus, Mu runs on different operating systems (macOS, Windows, Linux).
Note
IDE PyCharm#
PyCharm — is an integrated development environment for Python. For beginners it may be difficult option due to the large number of settings but it depends on personal preferences. Pycharm supports a huge number of features, even in free version.
Pycharm is a great IDE but I think it’s a little difficult for beginners. I wouldn’t recommend using it if you’re not familiar with it and you’re just starting to learn Python. You can always switch to it after book but for now it’s better to try something else.