Which python editor should I use? (2020)

Python is a very simple and straightforward programming language. But Python is also very powerful and as your project starts to grow it can be complicated to maintain your source code without a proper editor. So which python editor should you use? If you are searching for a perfect editor for python, you are in the right place.

I have tested several editors over the last past few years and followed their development closely. There are many options, but I want to show you my three personal favorites and explain what are the advantages and disadvantages of each.

1. Python Editors (IDEs) benefits

An IDE (Integrated Development Environment) is software designed to make your programmer’s life easier. It will manage your code and integrate it with your desired programming language. Most of them support multiple languages or can be extended via plugins. Here are the main purposes of IDEs

  • Project Management: It will organize all the files and assets that are needed for your project.
  • Syntax Highlighting: It will auto-complete when you’re typing code and also suggest variables, methods, etc. that can be used.
  • Source Control / Collaboration: Most IDEs are integrated with Source Control and Collaboration systems like Git.
  • Run and Debugging: It will highlight errors that occur on code execution and provide debugging abilities

Of course, there might be other benefits as well, but these are the main ones. These four items can be viewed as a requirement list every good IDE should offer!

2. My personal favorite IDEs for python

2.1. Visual Studio Code

This is my absolute favorite IDE. It is extremely lightweight, completely free, and integrates several programming languages and source control like Git. It also has a modern and nice look and feel (with dark mode by default ), which is very important. You can also add a lot of plugins for docker support, database support, markdown, etc.

This shows the GUI of Visual Studio Code

Pros: Visual Studio Code is very fast, lightweight, open-source, and completely free. It has great integrations and plugins for python, git, and much more.


2.2. PyCharm

PyCharm is a fully dedicated python IDE. It has a paid version, but also a completely free community edition. The community edition has all the necessary features a developer needs. Out of the box it works with python. That means you don’t need to install any plugin or extension to get started.

This shows the GUI of PyCharm

Pros: PyCharm is a dedicated python IDE. It runs python out of the box and has tons of users and good community support.

Cons: PyCharm takes more time to load. It doesn’t have a nice look and feels, in my opinion.

2.3. Sublime-text

Sublime-text is a paid IDE that has also good extensions for python. It is very efficient to deal with large files, I mainly use it for viewing and analyzing log files. But it’s also nice for python development. However, it might be a bit complicated for beginners to installing extensions. Therefore, I can only recommend sublime-text if you are already advanced and search for a nice and extremely efficient editor that is very flexible.

This shows the GUI of Sublime-text

Pros: Very efficient and lightweight, especially when dealing with large files. Good community and support

Cons: Sublime-text is not free. Plugins can be complicated to install for beginners.

3. Which python editor should I use?

Which python editor you should use depends on your personal taste. All of them are very powerful and productive. Because most are free of charge or have at least a trial period. You can easily download and test them all and decide which one is your favorite.

Note, that there are of course a lot more IDEs than I covered here. But to be honest with you, it really doesn’t help to test all of them. My personal recommendation is to stick with the most popular because they are well supported. And because they are popular, you will get tons of resources, community support, and help when you search for them.

Beginners might have a look at PyCharm which is very straightforward. You don’t need to install an extension or anything else to integrate with python because it is built just for it.

For people who want to use just more languages than python and prefer a nice integration with Git, Visual Studio Code is the way to go. It supports almost every programming language via the right extension and works very nicely with Git.

You may also have a look at sublime-text when you are dealing with larger text files, log files, etc. Sublime is extremely powerful and efficient when dealing with really big plain text files.