The list of open source Python editors and integrated development environments available for Linux is lengthy. Here are a few other interesting standouts.
PyCharm is an Integrated Development Environment (IDE) used in computer programming, specifically for the Python language. JetBrains developed it. Pycharm is a commercial product, but the makers also offer a community edition which is free and open source under the Apache 2.0 license. PyCharm comes with the following features; Coding Assistance and Analysis, with code completion, syntax and error highlighting, linter integration, and quick fixes; Python Refactoring; Support for web frameworks (Django, web2py and Flask); Integrated Python Debugger; and Integrated Unit Testing and most features expected of any IDE.
PyDev is a Python IDE for Eclipse, which may be used in Python, Jython and IronPython development. It comes with many goodies such as Django integration, Code completion, Code completion with auto import, Type hinting, Code analysis, Go to the definition, Refactoring, Debugger, Remote debugger, Find Referrers in Debugger, Tokens browser, Interactive console, Unittest integration, Code coverage, and many others. PyDev adds a whole lot of features to Eclipse Which you will find quite useful especially if you’re coming to Python from a background in a different language like Java.
Eric is a fully featured Python editor and IDE, written in Python. It is based on the cross platform Qt GUI toolkit, integrating the highly flexible Scintilla editor control. It is usable as every day quick and dirty editor as well as being usable as a professional project management tool integrating many advanced features Python offers the professional coder. Eric includes a plug-in system which allows easy extension of the IDE functionality with plug-ins downloadable from the net.
Spyder (Scientific Python Development Environment) is a powerful interactive development environment for the Python language with advanced editing, interactive testing, debugging and introspection features and a numerical computing environment. Thanks to the support of IPython (enhanced interactive Python interpreter) and popular Python libraries such as NumPy (linear algebra), SciPy (signal and image processing) or matplotlib (interactive 2D/3D plotting). Spyder may also be used as a library providing powerful console-related widgets for your PyQt-based applications – for example, it may be used to integrate a debugging console directly in the layout of your graphical user interface. Get Spyder from here.
Pyzo is a free and open-source computing environment based on Python. If you’re familiar with e.g. Matlab. Pyzo can be a free alternative. Essentially, Pyzo is a Python IDE, that plays well with conda to manage your Python packages (though it works with any Python interpreter), and has a website to help newcomers on their way. The IDE aims at interactivity and simplicity and consists of an editor, a shell, and a set of tools to help the programmer in various ways. Get Pyzo going on your machine using the quickstart, or check the code on Github.
Thonny is a Python IDE for beginners. It comes with Python 3.5 built in so that you need to run the single simple installer and you’re ready to learn to program. The initial user interface is stripped of all features that may distract beginners. It comes with a simple debugger, a step-through expression evaluation, code completion, and a beginner-friendly system shell. Get Thonny from here.
The best IDE for Python will always differ depending on whoever asks the question. I have talked about just a handful of the IDEs available. While many prefer fully featured IDEs as I have talked about, some people still prefer a basic text editor, like Emacs, VIM, or Gedit, so far as it can be extended with features like syntax highlighting and autocomplete. Do you prefer another? Let us know your Python IDE of choice in the comments below, and tell us why it’s your top pick. Thanks for reading!