Best Python IDE and Code Editors?
Hello All, Can anyone tell me whats the best python IDE and code editors? I am a little bit confused between Eclipse + Pydev, Pycharm, Sublime Text, Visual Studio Code, Vim, GNU/Emacs, Atom/Atom-IDE, Cloud9.
Comments
I use Pycharm for complicated projects and debugging and bash for quick scripting.
Also check PythonGateway - it comes with integrated Python interpreter right in your IRIS terminal.

I am similar to Andrew in that I use PyCharm for my big projects as it helps manage multiple venvs for me. Which means I don't install all the different packages I am playing with site-wide to avoid issues. I am typically wrapping my Python into Docker, so this works well, and PyCharm also helps maintain/monitor my requirements.txt file in the venv, which then ensures that when I build the docker, I can pip install -r requirements.txt and know I have everything I need.
I use Notepad++ if all I want to do is a tiny script or just want to look at something I did, as PyCharm can take a while to open, so if I am not really writing code, it isn't worth opening up.
I am not using Jupyter notebooks for my "hacky" stuff and ML, as it makes it easy to have a couple of lines of code and print results. So, if I am just testing something, or learning some new trick, it is really easy to iterate a line or two of code, or compare outputs, etc.
What does autocompletion has to do with learning (or not learning) a language?
For me, the best Python IDE I have used to date has been PyCharm.
- It performs quite well,
- the integrated debugger is very effective and easy to understand,
- it neatly handles multiple concurrent versions of Python installations being available and being used in different projects at the same time,
- the community edition is fully functional enough that you can really get into it and achieve big productivity gains without necessarily forking out any big bucks.
- Integrated support for PyUnit testing
- Integrated support for source control (e.g. Git)
- Integrated Python console
- it handles Python 2 as well as 3, even doing Python 3 syntax highlighting in Python 2 to get you compatible for upgrading
- it can have multiple projects open concurrently.
- On the down-side, it may take a minute or two for it to re-integrate all the symbols etc, from a new or updated Python installation.
For lighter weight project, I like Atom, but the frequency with with lightweight projects get heavy enough to require PyCharm is such that I've ended up just creating a "Hacks" project with multiple sub-projects for all those hacky little Python things I want to try out. PyCharm is great for that too because I can trivially create independent launch setups for every file in a project, even specifying different Python interpreters for each one.
Hi Arjun, I use directly Ensemble (see below). Takes a couple of days to get the full taste, but afterwards it is hard to get back to "linear" IDEs.
Hi Arjun Kumar,
I don't recommend an IDE for the complete beginner because it automatically completes your half-written word thus not letting you learn them well. Of course, you can disable the autocomplete feature. But, I think a beginner should work close to the metal. And as they developed into intermediate they can use IDE's because usually at that stage simple text editors won't suffice. Long story short, a beginner should use IDLE because it is builtin and it has basic features. But, if you insist for more complete IDE PyCharm is the best.
Features of PyCharm:
- Intelligent Python editor
- Graphical debugger and test runner
- Navigation and Refactorings
- Code inspections
- VCS support
- Scientific tools
- Web development
- Python web frameworks
- Python Profiler
- Remote development capabilities
- Database & SQL support
If you still want to know about other Python IDE, Then visit our post.
For my recommendation pycharm is the best Python IDE.