The editor is the main tool of a programmer. Learn to use one of them well.
Here we list the most common Python editors.
editor | description |
---|---|
VS Code | powerful editor with many plugins, maintained by Microsoft |
PyCharm | lots of functionality for writing big programs |
Spyder | Anaconda IDE with interactive debugger |
IDLE | default basic Python editor |
IPython | powerful interactive environment |
Jupyter | great for integrating output, text and diagrams |
JupyterLab | like Jupyter but slightly different interface |
Notepad++ | good general-purpose text editor on Windows |
Vim | works through SSH and other terminals |
A modern general-purpose text editor. There are many plugins for Python and other languages available. It has great integration for git and Docker.
PyCharm is probably the most luxurious IDE for Python. It contains tons of functions that cover most of what the other editors offer. This makes PyCharm a great choice for bigger Python projects, although it has a bit of a learning curve.
Spyder is part of the Anaconda Python distribution. It is a small IDE mostly for data analysis, similar to RStudio. It automatically highlights Syntax errors, contains a variable explorer, debugging functionality and other useful things.
The standard editor distributed with Python. IDLE is easy to use but very basic. IDLE is not useful for bigger programs.
IPython is a better interactive Python command line. It incorporates tab-completion, interactive help and running regular shell commands.
IPython adds %
-magic commands like %time
and %hist
that are available in most of the other editors. This is why you find IPython listed here.
IPython is very useful to try out a few lines of code quickly, but it does not really count as an editor.
Interactive environment for the web browser. A Jupyter notebook contains Python code, text, images and any output from your program (including plots!). It is a great tool for exploratory data analysis.
Jupyter Lab offers a slightly different interface, but does the same things under the hood.
If you must use a text editor on Windows to edit files, use Notepad++. DO NOT USE THE WINDOWS NOTEPAD!
To use Vim, you need to learn a lot of keyboard shortcuts. Its unique advantage is that it is the only editor in this collection that you can use through an SSH connection on a remote machine.