All set to play with Python? Python IDE is the first thing you need to get started with python programming. There are many IDEs available out there in the wild and selecting one can be a daunting task.
You can get started with Python programming in a basic text editor like notepad or choose to go ahead with a complete and feature rich Python IDE like PyCharm, Pydev, Emacs or Eric.
Selection of the right editor can greatly influence productivity and effectiveness of Python programming. Professional programmers invest time well in advance and go for the IDE that best meets their requirements.
Which one should you go for? This is something that you have to decide and totally depends on what you like, need, and can afford. You might need to try a few before narrowing down to the final one.
Most of these IDEs are supported on multiple platforms including Windows, Mac and Linux and are available free of cost. If you are a student planning to learn Python, I recommend freely available IDEs like Pydev with Eclipse, IEP, Emacs, PTVS or VIM.
However, there are more advanced commercial IDEs available as well that target enterprises and professional developers. Some of the best editors in this category include PyCharm, Wing IDE, Komodo and Sublime Text 3. Most of these commercial editors also provide free community version by cutting down on some of the features.
If you simply want to play around with python or run and test some python code, then an online Python IDE too will do the job for you. Pythonfiddle.com is a good online python IDE that you can try, others include pythonanywhere.com, repl.it and ideone.com.
Let us look at the 10 best Python IDE available as of today that are feature rich, most advanced, popular among Python developers and help do rapid application development.
In case you are interest in learning Python for data science, check out this course from our partners - Learn Python for Data Science.
1. Pydev with Eclipse - Best Python IDE (Free Tier)
Pydev is the Python IDE for masses for the simple reason that it is free of cost and comes packed with powerful features for efficient Python programming. It is an open source plugin that runs on top of Eclipse and brings Python to the kingdom of Eclipse. If you are an existing Eclipse user then Pydev is just home for you, if not, then Eclipse might sound intimidating in the beginning but worth the efforts.
Key features that keep Pydev on top of the list include Django Integration, Auto code completion, Multi language support, Integrated Python Debugging, code analysis, code templates ,smart indent, bracket matching, error markup, source control integration, code folding, UML Editing and viewing, and unit test integration.
Pydev project was created long back in 2004 by AleksTtotic and is currently run and maintained by Fabio Zadrozny. Pydev is kept updated with latest and modern set of features with the help of amazing user community and sponsorship from corporates like Liclipse, Squish, TraceTronic and many more.
While Pydev easily qualifies as best open source Python IDE, it also comes packed along with another product named Liclipse. Liclipse is a commercial product built on top of Eclipse and provides usability improvements and additional themeing options.
Apart from Python, Pydev IDE supports Jython and IronPython development as well. You can download Pydev here at – pydev.org/download.html.
Ready more about Pydev at official website at - pydev.org.
2. PyCharm - Best IDE for Python (Commercial Version)
PyCharm is a full featured IDE for Python from the house of company named JetBrains. JetBrains is making top notch developer tools for last 15 years with an aim to make development easier and enjoyable.
PyCharm is a professional Python IDE and comes in two flavors – Free community Edition and a much advanced professional edition that targets enterprise developers. The popularity of PyCharm can be gauged from the fact that big brands like Twitter, Groupon, Spotify, ebay and Telefonica etc. have also used PyCharm Python IDE.
Most of the features are available in the free version itself, including intelligent code completion, intuitive project navigation, on the fly error checking and fixing, code quality with PEP8 checks and smart refactoring, Graphical debugger and test runner. It also integrates with IPython notebook, supports Anaconda as well as other scientific packages like matplotlib and NumPy.
There are other more advanced features like Remote development capabilities, database support, web development frameworks support etc. and are available only in the professional edition of PyCharm.
What I like the most about PyCharm is its support for multiple third party web development frameworks like Django, Pyramid, web2py, google app engine and Flask which makes it a complete Rapid application development IDE.
You can download community Edition (free of cost) of PyCharm Python IDE here at – Download Pycharm community edition.
You can read more about PyCharm at – jetbrains.com/pycharm.
VIM is one of the most advanced text editors and is very popular one among the community of Python developers. It is open source and available free of cost under GPL license.
Vim though is best known as an editor but it offers nothing less than a full featured Python development environment when configured correctly for Python development. VIM is light weight, modular and fast and is best suited for programmers who love keyboards and only keyboards, no mouse use while coding.
Initial configuration can take a bit of time since you need to use multiple VIM plugins to make it work the way you want it to work, but what you get in the end is worth the efforts. Looking for a Linux Python IDE, VIM can easily be your default choice.
You can read more about VIM here at - vim.org.
4. Wing IDE
Wing IDE is another commercial Python IDE from the house of company named wingware and targets professional developers. Wing IDE was launched 15 years back and is very mature product and provides most of the modern set of tools and features required for Python programming.
Wing IDE is supported on windows, OS X and Linux and works with latest Python versions including stackless Python. Wing IDE has a basic version which is free of cost, a personal edition and a much powerful professional edition.
Debugging is something where Wing IDE shines the most and includes features like multi process debugging, debugging of threaded code, auto child process debugging, breakpoints, code stepping, code inspection data etc. It also offers feature to remotely debug code running on Raspberry PI.
With regards to the code management, it is very flexible with Git, subversion, perforce, cvs, Bazaar and Mercurial and includes diff and merge tool.
Wing IDE also supports plethora of Python frameworks including Maya, MotionBbuilder, Zope, PyQt, PySide, pyGTK, PySide, Django, matplotlib and many more.
You can read more about Wing IDE here at - Wing IDE from Wingware.
5. Spyder Python
Spyder Python is an open source IDE for Python, best suited for scientific python development. It is a lightweight software, written in Python itself and available as free to use under MIT license.
Some of the basic features of Spyder python are multi language editor, interactive console, documentation viewer, variable explorer, Find in files, files explorer etc. It can get Spyder IDE package for windows, Mac or Linux.
Though Spyder is a standalone IDE that is supported on multiple platforms including windows, Linux, MacOS, MacOS X but it can be also utilized as a PyQt extension library and can be embedded in PyQt applications.
You can read more about Spyder Python IDE here at - github.com/spyder-ide/spyder.
6. Komodo IDE
Komodo IDE is a cross platform IDE from company named Activestate and supports multiple languages including Python. It is a commercial product but offers an open source free version by the name Komodo Edit and can be installed on Mac, Windows and Linux.
Full featured Komodo is offered free of cost to qualified educational institutions where teachers and professors can use it in labs and for teaching purpose. Students also get the licenses at a much discounted rate.
Like most of the Professional Python IDEs, Komodo also includes basic features like code refactoring, auto complete, calltips, brackets matching, code browser, go to definition, graphical debugging, multi process debugging, multithreaded debugging, breakpoint configuration, code profiling, integrated unit testing and integration with third party libraries like pyWin32.
With the latest version release, Komodo is giving tough competition to the best Python Editors like PyCharm, Pydev and Wing IDE by offering features like package manager integration, track changes, markdown viewer, shell scope, quick bookmarks, go to anything (Commando) and many more.
Download free version of Komodo IDE here - Komodo Edit download.
Read more about Komodo IDE at here - Komodo IDE.
7. PTVS - Best Python IDE for Windows
What Pydev is to Eclipse PTVS is to Visual Studio. PTVS or "Python Tools for Visual Studio" transforms Visual Studio into a powerful and feature rich Python IDE, and it is open source and totally free. PTVS is the most recent entrant in the world of Python IDEs and was released in the mid of 2015. It is developed and maintained by community and Microsoft itself.
PTVS is supported on almost all free versions of Visual Studio and includes below editions for both VS 2015 and VS 20013.
- Community Edition
- Express for Web
- Express for Desktop
Some of the key features of PTVS include support for Python, IronPython & CPython, code editing & browsing, profiling, Python/C++ debugging mixed, Linux/MacOS remote debugging, IntelliSense and IPython. It also supports web development with Django and many other frameworks.
It is without any doubt give you best python IDE for windows among the free tier and If you are a visual studio user already and want to try your hands on Python, you need not look for anything beyond PTVS.
Know more about PTVS at - PTVS Python IDE.
8. Eric Python
Eric is another open source Python Editor and IDE that comes packed with most of the features required for efficient programming. It is written purely in Python and is based on Qt GUI toolkit and integrates powerful Scintilla editor control.
Eric is the creation of Detlev Offenbach and is free to use under GPL license. Over the years of development Eric has emerged as one of the most used and features rich IDE. It offers a solid plugin management system and can be extended with use of plugins.
Eric provides all basic features like call tips, folding, highlighting, class browser, profiling and code coverage etc. but the key features that make Eric competitive enough with commercial python IDEs like PyCharm, Wing IDE or Komodo are –
- Integrated task management
- Unit test support – integrated
- Rope refactoring
- Core Plugins for Regex and Qt dialogs
- Option to launch third party apps from within the editor
- Application diagrams.
- Project management capabilities
- Interactive python shell
- Multi lingual user interface that includes English, German, Russian, French, Czech, Spanish, Italian, Turkish and Chinese languages.
- Version control for Subversion, Mercurial and Git using ad on plugins.
- And many more.
Eric can easily be counted as best IDE for Python in free tier. You can read more about Eric Python here at - Eric Python IDE.
9. Sublime Text 3 / Anaconda Python IDE
Sublime Text 3 is one of the most powerful cross platform lightweight code editors till date. With the use of plugins Sublime Text 3 can be used as a full featured IDE - the Sublime Python IDE. You get elegance of sublime text and powers of Python at one place to create your own magic.
The most powerful transformation is brought to you by Anaconda package which provides code completion and linting for Python. While Anaconda takes care of the basics, there are tons of themes, lightning fast user interface, easy configuration, tons of packages for more power features.
You can read more about Anaconda Python IDE here - Sublime Text 3 as Python IDE.
Creators of this IDE also have great online courses, here is the one on Pandas - Pandas Foundations.
10. Emacs - Python Editor cum IDE
Emacs has an ecosystem of its own. It is the GNU text editor which is extensible and highly customizable. When it comes to Python programming, Emacs can be configured in such a way that it gets transformed into a fully functional free Python IDE.
Emacs is so popular for Python development that it provides out of the box Python support via python-mode. Emacs can be configured further for more advanced features by using additional packages.
Python is a very old programming language and there are many Python IDEs available since the beginning of time, however, the overall programming landscape is fast changing and so are the Python IDEs.
All the IDEs mentioned in this article come with different flavors but attempt to meet one common requirement i.e. speed development with scalable and manageable code. You can select any one that best suits your requirements, you can easily get great python ide for windows or a python ide for Linux or python ide Mac supported.
Let us know your experience with Python programming and the Python IDE of your choice via comments, cheers!!