share
Stack OverflowWhat IDE to use for Python?
[+1033] [1] husayt
[2008-09-17 09:53:15]
[ python ide editor ]
[ http://stackoverflow.com/questions/81584/what-ide-to-use-for-python ]

What IDEs ("GUIs/editors") do others use for Python coding?

[+393] [2008-09-17 09:57:19] Rafał Rawicki

Results

                                       Rapid Application Development -.
                                           Integrated DB Support -+   |
                                                GUI Designer  -+  |   |
                                             Unit Testing -+   |  |   |
                                        Code Templates -.  |   |  |   |
                                       Code Folding -+  |  |   |  |   |
                           UML Editing / Viewing -+  |  |  |   |  |   |
                              Line Numbering -+   |  |  |  |   |  |   |
                         Bracket Matching -+  |   |  |  |  |   |  |   |
                          Smart Indent -+  |  |   |  |  |  |   |  |   |
         Source Control Integration -+  |  |  |   |  |  |  |   |  |   |
                   Error Markup  -+  |  |  |  |   |  |  |  |   |  |   |
  Integrated Python Debugging -+  |  |  |  |  |   |  |  |  |   |  |   |
    Multi-Language Support -+  |  |  |  |  |  |   |  |  |  |   |  |   |
  Auto Code Completion -+   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 Commercial / Free --+  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 Cross Platform -+   |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
                _|___|__|___|__|__|__|__|__|__|___|__|__|__|___|__|___|_
                |CP|C/F|AC|MLS|PD|EM|SC|SI|BM|LN|UML|CF|CT|UT|UID|DB|RAD|comments
                +--+---+--+---+--+--+--+--+--+--+---+--+--+--+---+--+---+
 BlackAdder     |Y | C |  |   |  |  |  |Y |  |  |   |Y |  |  |   |  |   |
 BlueFish       |L |   |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 ConTEXT        |W | C |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 DABO           |Y |   |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 DreamPie       |  | F |Y |   |  |  |  |Y |  |  |   |  |  |  |   |  |   |
 Dr.Python      |  | F |  |   |  |Y |  |  |  |  |   |  |  |  |   |  |   |
 Editra         |Y | F |Y | Y |  |  |Y |Y |Y |Y |   |Y |  |  |   |  |   |
 Emacs          |Y | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |   |  |   |
 Eric Ide       |Y | F |Y |   |Y |Y |  |Y |  |Y |   |Y |  |Y |   |  |   |
 E-Texteditor   |W |   |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 Geany          |Y | F |Y*| Y |  |  |  |Y |Y |Y |   |Y |  |  |   |  |   |*very limited
 Gedit          |Y | F |Y¹| Y |  |  |  |Y |Y |Y |   |  |Y²|  |   |  |   |¹ with plugin ² sort of
 Idle           |Y | F |Y |   |  |  |  |  |  |  |   |  |  |  |   |  |   |
 JEdit          |Y | F |  | Y |  |  |  |  |Y |Y |   |Y |  |  |   |  |   |
 KDevelop       |Y | F |  | Y |  |  |Y |Y |Y |Y |   |Y |  |  |   |  |   |
 Komodo         |Y |C/F|Y | Y |Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |Y |   |
 NetBeans*      |Y | F |Y | Y |Y |  |Y |Y |Y |Y | Y |Y |Y |Y |   |  | Y |*pre-v7.0
 NotePad++      |W | F |  | Y |  |  |  |Y*|  |Y |   |  |  |  |   |  |   |*with plugin
 Pfaide         |W | C |Y | Y |  |  |  |Y |Y |Y |   |Y |Y |  |   |  |   |
 PIDA           |LW| F |Y | Y |  |  |  |Y |Y |Y |   |Y |  |  |   |  |   |VIM based
 PTVS           |W | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |  |  |Y* |  | Y |*WPF bsed
 PyCharm        |Y | C |Y | Y*|Y |  |Y |Y |Y |Y |   |Y |  |Y |   |  |   |*javascript
 PyDev(Eclipse) |Y | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |   |  |   |
 Pyscripter     |W | F |Y |   |Y |Y |  |Y |  |Y |   |  |Y |Y |   |  |   |
 PythonWin      |W | F |Y |   |Y |  |  |Y |Y |  |   |Y |  |  |   |  |   |
 SciTE          |Y | F |  | Y |  |Y |  |  |Y |Y |   |Y |Y |  |   |  |   |
 ScriptDev      |W | C |Y | Y |Y |Y |  |Y |Y |Y |   |Y |Y |  |   |  |   |
 SPE            |  | F |Y |   |  |  |  |  |  |  | Y |  |  |  |   |  |   |
 Spyder         |Y | F |Y |   |Y |Y |  |Y |Y |Y |   |  |  |  |   |  |   |
 Sublime Text   |Y |C/F|Y | Y |  |  |  |Y |Y |Y |   |  |Y |  |   |  |   |extensible w/python
 TextMate       |M |   |  | Y |  |  |  |Y |Y |Y |   |Y |Y |  |   |  |   |
 UliPad         |Y | F |Y | Y |Y |  |  |Y |Y |  |   |  |Y |Y |   |  |   |
 Vim            |Y | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |  |   |
 WingIde        |Y | C |Y | Y*|Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |  |   |*support for C
 Zeus           |W | C |  |   |  |  |Y |Y |Y |Y |   |Y |Y |  |   |  |   |
                +--+---+--+---+--+--+--+--+--+--+---+--+--+--+---+--+---+
                |CP|C/F|AC|MLS|PD|EM|SC|SI|BM|LN|UML|CF|CT|UT|UID|DB|RAD|
                |__|___|__|___|__|__|__|__|__|__|___|__|__|__|___|__|___|

Acronyms used:

  • CP - Cross Platform
  • C - Commercial
  • F - Free
  • AC - Automatic Code-completion
  • MLS - Multi-Language Support
  • PD - Integrated Python Debugging
  • EM - ErrorMarkup
  • SC - Source Control integration
  • SI - Smart Indent
  • BM - Bracket Matching
  • LN - Line Numbering
  • UML - UML editing / viewing
  • CF - Code Folding
  • CT - Code Templates
  • UT - Unit Testing
  • UID - GUI Designer (for example, Qt, Eric, ..)
  • DB - integrated database support
  • RAD - Rapid application development support
  • L - Linux
  • W - Windows
  • M - Mac

I don't mention basics like syntax highlighting as I expect these by default.


This is a just dry list reflecting your feedback and comments, I am not advocating any of these tools. I will keep updating this list as you keep posting your answers.

PS. Can you help me to add features of the above editors to the list (like auto-complete, debugging, etc.)?


(11) @George Stocker You have locked this question and merged other questions onPython IDEs with this one. We had many answers with opinions, reviews and useful information and now we have one answer with this crappy unclear table. Could you please revert your actions? - Piotr Dabkowski
(9) I came here to find tips on what are good Python IDEs to use for Windows. While this table contains a list of features, it does not really answer the question: what works well in practice? On a question like this I really want to hear about people's practical experiences with a given product. - HYS
@HYS Those sorts of questions are off topic for Stack Overflow; we really have two options: A curated list maintained by the community; or no question. Anything else quickly delves into madness. There were over 50 answers to this question, most with one liners; and many repeated answers. Our format doesn't handle this well. The Wiki-lock is our attempt to 'make it work'. You'll probably want to take this issue up on meta if my answer doesn't satisfy you. - George Stocker
(1) @PiotrDabkowski We don't want opinions here. We even have a close reason that says as much. I'm not a huge fan of the table; and I'm sure a curated list would work just as well as this 'crappy unclear' table. If you'd like to suggest an edit that does that, go ahead and do so. However, our choices are limited: Either 1) don't allow the community to edit the existing answer by locking (and thus not being able to keep the list up to date) or 2) Institute a wiki-lock and let the community keep one answer up to date. - George Stocker
(10) @George Stocker I know it is not a perfect question for SO but it is very popular - it has over 700k views. And this table does not answer the question at all. Before there were many one liners like: I like Pycharm, I like something else and basing on them I could deduce which IDE is most recommended. This table contains a limited feature list but does not contain valuable information about user experience, reliability etc. A single answer like: Try XY IDE helps much more. You cant really answer this question in one answer. We need many short answers AND a feature list. - Piotr Dabkowski
sublime text 2\3 should be commercial... but it's too bad for most of people use it as "free tool" forever, :( - staticor
On my smartphone browser, this table is completely unreadable. - Axel
Maybe I'm being dense here, but what are the letters supposed to mean in the table entries? Y, F, W etc.? - iThink
Moderator Note: If you don't like the format of the table; feel free to edit the table out into a format you think is more visually appealing. The wiki-lock will stay on the question (otherwise, the temptation to add new answers that duplicate existing answers is too great); but everyone can suggest an edit to improve the post. If you're not willing to do that, then there's very little hope you're willing to help keep the question up to date anyway. - George Stocker
To sum up deleted answers: PyCharm was generally most recommended, but it is not free (you can get it for free though, for example if you are a student). The most recommended free IDE was Eclipse with PyDev. If you want to use something smaller try Spyder or Sublime Text. I personally recommend trying PyCharm, even its free community edition is better than other free IDEs. - Piotr Dabkowski
Humm, I see the reasoning, although I think that's a pitty: without the answers -- which were pretty helpful -- it's now pretty pointless... I think the only way to make it helpful is with the opinions and votes, but if you don't see it that way, maybe the proper way would really be deleting the answer altogether and just pointing it to the Python wiki: wiki.python.org/moin/IntegratedDevelopmentEnvironments (probably comments on this single answer will quickly become a flame war now that people can't just compliment on the answers they agreed upon). - Fabio Zadrozny
Note that you should probably do the same you did for other IDEs if that's the stackoverflow reccomendation: stackoverflow.com/questions/16991/…, stackoverflow.com/questions/68504/… (i.e.: do it for all or leave as they were for all, but be consistent) - Fabio Zadrozny
Note bringing it up on meta for those that want to follow: meta.stackoverflow.com/questions/277802/… - Fabio Zadrozny
1