This article was originally published at: https://www.blog.duomly.com/the-best-python-ides-and-code-editors/
Python is one of the most popular programming languages in the world. But it can be challenging to learn if you don't know which IDE or code editor to use.
In this article, I share my experience with many different Python IDEs and Code Editors, so you can decide which one will work best for your needs!
PyCharm
https://www.jetbrains.com/pycharm/
The first python IDE I tried was PyCharm, developed by JetBrains and available for both PC and Mac users. The best part about this python code editor is its features! It comes with everything you could ever need to create python applications. For example, refactoring tools, unit testing capabilities, version control integrations (git and svn), an integrated debugger that supports PDB files, and the option to configure it for your python interpreter of choice (i.e., python 2 or python 3).
What sets PyCharm apart from the other python code editors on this list is its user-friendly interface and support for web development frameworks like Django and Flask. The only downside to PyCharm is that it isn't as lightweight as I would like, which can slow down your python IDE experience.
Spyder
Another python IDE I tried was Spyder, developed by the python community and available for Windows users. The best part about this python code editor is its lightweight design (it's only 3MB). That lets you open it up quickly and start writing python code right away!
It comes with all standard python IDE features like auto-completion, syntax highlighting, debugger support, and web development frameworks like Django and Flask.
However, the downsides to Spyder are that:
- its user interface can be difficult to learn at first due to its lack of intuitiveness
- it doesn't support other operating systems like Mac and Windows.
IDLE
https://www.python.org/downloads/windows/
A light python coding environment for python programming is IDLE. It has shell abilities, auto-completion support, online help, and debugging. It can run python scripts without opening a new window or tab.
It's useful for people who don't need all the bells and whistles of more advanced python ide. I've personally used it only on Windows systems. Still, I plan to switch over completely to this python programming environment because of its simplicity!
Eclipse
https://www.eclipse.org/downloads/packages/release/ganymede/sr2
Another python IDE I tried was Eclipse, a java-based python IDE that runs on python 2.5 or up. Eclipse is an open-source program that provides python developers with a text editor, python interpreter, interface to workspace python libraries, debuggers for python code, supports python debugging in remote systems, and has drag-and-drop features when it comes to importing code into your IDE workspace.
PyScripter
https://sourceforge.net/projects/pyscripter/files/latest/download
Another python IDE I tried was PyScripter, developed by the python community and available for both PC and Mac users. The best part about this python code editor is its lightweight design, and you can download this python IDE for free.
The python ide offered many features like python code indentation, syntax checking, code folding, completion, and visual debugging. I was really impressed when I tried to debug python code in this python IDE. Launching my script inside the PyScripter python debugger showed me the current line number where the problem occurred.
It is a good python IDE, but it does not support inline editing like sublime text python editor. That allows quick modifications without leaving the comfort of your keyboard.
Coda
Another python IDE I tried was Coda, which is developed by Panic and available for Mac users. The best part about this python code editor is its feature-rich interface that makes writing python code a breeze! It comes with syntax highlighting, bracket matching, a python console, and a file browser.
I initially found it tough to get used to the python IDE. That's because of its different approach from all other python code editors I have come across so far. Still, I totally got into it sometime later and loved it! They have also released some exciting features such as Automatic Backups, which will automatically save any unsaved work if the python IDE crashes.
If you are one of those programmers who prefer using Macs to Windows PCs instead, then Coda might be for you!
The downside to Coda is its price tag ($99) since it's not free.
Visual Studio Code
https://code.visualstudio.com/
Another python IDE I tried was Visual Studio Code, which is developed by Microsoft and available for PC, Linux, and Mac users. The best part about this python code editor is its feature-rich interface that makes writing python code a breeze! It comes with syntax highlighting, debugger support for both python 2 and python 3, Git integration, web development frameworks like Django and Flask. And best of all, it is free!
I was impressed when I tried python debugging in Visual Studio Code python IDE. It showed me the current line number where the problem occurred. It provided some extra information regarding my python code's execution process. The python ide also comes with a command bar that offers several features like navigating back to previous files/folders, deleting, etc.
Visual Studio Code is an open-source python editor for programmers working on Windows, Mac, or Linux.
WingIDE
Another python IDE I tried was WingIDE, which is developed by Wingware and available for Mac users. The best part about this python code editor is its feature-rich interface that makes writing python code a breeze!
WingIDE runs on any python distribution (pip installed). It automatically checks your code as you type and alerts you to errors…
If you use Emacs or Vim, one of the other best python IDEs will be perfect for you. If not, then go with WingIDE; it takes less time to learn and offers many features.
Jupyter
https://www.jupyter.org/notebook
The python IDE I use the most is Jupyter Notebook, developed by the python community and available even for Mac users (through Anaconda). It's basically a command-line python IDE that lets you start writing python code right away!
The best part about this python code editor is its portability. It can run on almost any operating system, including Windows, Mac, Linux, BSD, etc., making it ideal for python development on the go.
The downsides to using Jupyter Notebook:
- it doesn't support web frameworks like Django or Flask
- it doesn't have python debugging capabilities, so you'll have to use a separate python IDE if you want to debug your code.
Komodo Edit
https://www.activestate.com/products/komodo-edit/
Another python IDE I tried was Komodo Edit, which is developed by ActiveState and available for Windows users. The best part about this python code editor is its feature-rich interface that makes writing python code a breeze!
Although not as powerful as PyCharm, Komodo Edit is an editor that python coders will love!
Komodo Edit supports python 2.7 and 3.4 with syntax highlighting for 30+ languages. It also has some unique features like "Auto Indent" to help python programmers write better code more quickly. However, what's excellent about Komodo Edit is its cross-platform design.
So python coders can work on Windows, Mac OS X, or Linux without worrying about compatibility issues.
Suppose you are a python novice who's learning the ropes of coding in python. In that case, I'd recommend Komodo Edit as your first python IDE due to its simple UI and detailed documentation.
Thonny
Another python IDE I tried was Thonny, developed by the python community and available for all platform users. The best part about this python code editor is that it comes with python3.6 installed by default. So you can develop python programs right away without installing python in your system.
Despite the ease of use, I found this IDE didn't have code completion options like PyCharm mentioned above. But suppose you are a python beginner and prefer simple things. In that case, Thonny is good enough for writing python scripts or running them locally on your computer.
If you want to do anything more advanced than that, please don't use this python ide - there's no sense in using an IDE when you need more power!
Sublime Text
Another python IDE I tried was Sublime Text, which is developed by the python community and available for Windows and Mac users. The best part about this python code editor is that it's free.
Sublime Text is a great python text editor, but it lacks many python IDE features such as debugging and built-in quick help. I recommend python coders to use this python IDE if they want a lightweight python code editor that allows them to work with other features like web frameworks and text editors.
Emacs
https://www.gnu.org/software/emacs/
Another python IDE I tried was Emacs, which is developed by the python community and available for any operating system (including Mac).
Emacs is a pretty powerful python IDE with many features. However, it's pretty hard to master Emacs because of its steep learning curve. There are hundreds of Emacs packages to choose only desired ones that will increase your productivity without any problems.
Using Emacs, I recommend you Mastering Emacs by Mark Lutz. This book helps to improve python coding and python IDE skills.
Pydev
Another python IDE I tried was PyDev, which is developed by the python community and available for both Windows and Linux users. The best part about this python code editor is its lightweight design (it's only 6MB). That lets you open it up quickly and start writing python code right away!
It comes with all standard python IDE features like auto-completion, syntax highlighting, debugger support, and web development frameworks like Django and Flask. However, the downsides to PyDev are that its user interface can be confusing at first due to its lack of intuitiveness.
VIM
https://www.vim.org/download.php
Another python IDE I tried was Vim, a python code editor that runs in the terminal and is available for both Windows and Linux users.
The best part about this python code editor is the lightweight design that makes it very efficient. It also means that it isn't as feature-rich as some Python IDEs. However, suppose you're just looking for a simple python IDE without extra features. In that case, Vim is definitely right for you!
Atom
The newest python code editor on this list is Atom, developed by GitHub and available for PC and Mac users. Text-based with a myriad of features and settings to dig through! After using the other python editors listed here, I was skeptical about trying out another one because they all seem similar.
But after giving Atom a try, I realized how much more user-friendly it was than its competitors. Make almost everything you need easy to find or access via keyboard shortcuts (instead of clicking-through menus).
For python beginners: Atom is a free and open-source text editor available for Mac and PC users. It has most of the features you would expect in an advanced python editor and keeps its interface clean and easy to use.
If you need help with Python development, please contact us!
We have a team of experienced developers that will be happy to help you!
Thank you for reading,
Radek from Duomly