Python is one of the first options thrown at beginners who want to learn to code. And rightly so, it is easy to start with and is powerful enough to begin real-world projects. Python is employed in all areas of development, from software to websites and so much more. Python allows developers to work quickly and integrate systems more effectively. To start coding Python, you need to choose an IDE. There are many python IDEs available but here are some of the best python editors.
Best Python Editors
The list of open source Python editors and integrated development environments available for Linux is lengthy. Here are a few other interesting standouts.
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.
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.
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.
7. Thonny (Bonus for the Beginner)
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!
Thought this was a good starting point for an article, but wanted to suggest that it might be helpful to think about what you [the author] consider to be the key features of a good IDE and then to include some form of scoring matrix to show how each of your shortlist deliver those features.
For example, some might handle direct integration to a git repository; others might be really good at rapid prototyping and so on.
Something else that I’ve discovered when trying to learn a language is that a good IDE makes the process much easier, but a bad language can make it much, much harder. Microsoft like to think that Visual Studio is the business, but it so massively obfuscates what its doing that you never learn the language, only VS… These are the sorts of things that might be helpful to someone looking to pick an IDE.
My best python IDE is Codelobster – http://www.codelobster.com/python.html