Last Updated: Tuesday 17th September 2013
This article was written by Sergio Tapia Gutierrez. If you're after another opinion by Jason Fruit, checkout our other IDE article Comparison of Python IDEs for Development. We also have a Review of Python's Best Text Editors.

An IDE (Integrated Development Environment) is one of the best tools a programmer can wield. It allows developers to work efficiently and forget about the boilerplate.

While some programmers scoff at the idea of using anything more than a text editor, when you are working on a very big project consisting of many files, an IDE will have features that will make your life as a developer much easier.

Some features you can expect a good IDE to have are:

  • Code completion
  • Syntax highlighting
  • Templates for common code
  • Source Control support (eg. Subversion, Mercurial or Git)

Let's see which Python IDE's are the best and how they stack up against each other.

Eclipse with PyDev

Eclipse with PyDev

Eclipse with PyDev

Eclipse with PyDev

Eclipse with PyDev

PyDev's Official Site: http://pydev.org/

Eclipse is a very versatile IDE that's been around for a very long time. It's a time tested offering and is very solid all around. Eclipse is like a sandbox IDE; it can support any language as long as somebody has baked in the support through a package. Such is the case with PyDev, a package that allows you to turn Eclipse into a very useful Python IDE.

It's a completely free IDE that offer a wide array of features such as:

  • Django integration
  • Code completion
  • Code completion with auto import
  • Syntax highlighting
  • Code analysis
  • Go to definition
  • Refactoring
  • Mark occurrences
  • Debugger
  • Remote Debugger
  • Tokens browser
  • Interactive browser
  • Unit test integration
  • Code coverage
  • and many many more

I use this when coding in Python on my Windows machine, it just works with minimal configuration.

Komodo Edit

Komodo Edit - Available on Windows, Linux and Mac.

Komodo Edit - Available on Windows, Linux and Mac.

Komodo Edit's Official site: http://www.activestate.com/komodo-edit

Komodo Edit is a very clean, professional Python IDE. It doesn't have fluff and instead focuses on putting the thing you need right in front of you. No digging through random submenus looking for an option. It's code completion is very good and fast; it pops up as you type with minimal loading time.

ActiveState offers a commercial version of their IDE, called Komodo IDE.

The differences between the two version are as follows:

Differences between Komodo Edit vs. Komodo IDE

Komodo Edit vs. Komodo IDE

PyCharm

PyCharm by JetBrains

PyCharm by JetBrains

PyCharm's Official Site: http://www.jetbrains.com/pycharm/

PyCharm is an IDE created by JetBrains. You might remember these guys as the authors of ReSharper, one of the best investments a .NET developer can make. Well PyCharm is no exception, and continuing with their outstanding pedigree, JetBrains has released another excellent tool to the developer ecosystem.

Said to have the absolute best code completion technology, this one is worth at least a trial on your part.

  • Cross Platfom
  • Commercial
  • Automatic Code-completion
  • Integrated Python Debugging
  • Error Markup
  • Source Control integration
  • Smart Indent
  • Bracket Matching
  • Line Numbering
  • Code Folding
  • Unit Testing
  • http://bbrodriges.github.io/cv/ bbrodriges

    PyCharm is endeed the most awesome python IDE I've ever tried. It is a little bit complicate to find all features and learn all hotkeys, but a week of usage makes you addict to it.

  • bravemouse

    Agree..

    After trying all possible python IDE I can finally say that PyCharm is the best IDE for Python.

    • Darthvader

      Have you tried SLICK EDIT?

  • Paolo

    Another very interesting IDE is PyScripter (Windows). It’s very stable, with code completion, syntax highlighting, good debugging. It’s worth trying it.

    http://code.google.com/p/pyscripter/

  • thanos

    PyCharm is great to use but comes at a high price:

    38708 PyCharm thanos 6.3 67 973.6 MB Intel (64 bit)

    973 MD! And this is with five file files open (10K at most).

    I’ve used eclipse, komodo, texmate, xcode and pycharm and it’s the worst memory hog of the bunch.

    I bought the license but with each release it gets more hungry so I dont use it any more.
    xcode works for me.

    • m.b.

      Agreed, pycharm is a pig of program in terms of memory usage. Its all written in java. Very heavy cpu usage as well.

      Code completion just makes you a lazy programmer. Do yourself a favour, once you learn the language move on to a good editor.

      • Jim

        “Code completion just makes you a lazy programmer.”

        That may be one of the most ridiculous, antiquated comments that I’ve ever read. Code completion, in my opinion, makes you a more efficient developer, which helps you to focus on the task at hand, rather than try and memorize the syntax and idiosyncrasies of each language.

      • http://www.facebook.com/gene.novak.54 Gene Novak

        Code completion saves time.Beyond being able to type a character or two and hitting return it also validates your code as your going which can save time.

  • thanos

    I’ve just switched to http://www.sublimetext.com/. It’s really great. As to memory use see:
    http://youtrack.jetbrains.com/issue/PY-6858

    sublime is sublime!

    • Mr. Jolly

      +1 for sublimetext2 :)

      • Jose

        +1 for sublime as well. Using it for almost all my editing needs now! And it’s only getting better. It is the Textmate for the rest of us (non-Mac users).

    • Nijin Narayanan

      +1 for Sublime. :)

  • RajaRRV

    I used eclipse with Java , so I prfer eclipse/pydev ,… I never tried others

  • Chuck Wegrzyn

    You forgot Wing IDE. Out of the many IDE’s I have used it is the best I’ve run across!

  • Kevin Longworth

    I use PyScripter, no complaints at all, I like it. Although I haven’t tried others.

  • Pankaj Singh

    I’ve used Eclipse, PyScripter and a friend uses PyCharm.
    As a free resource, Eclipse beats them all.
    PyCharm is better in terms of performance.
    PyScripter is fine but has a lot of performance issues while Eclipse can be slow for bigger projects.

    • http://www.facebook.com/gene.novak.54 Gene Novak

      Eclipse’s pydev is pretty nice, except I can’t seem to get it to do code completion with string variables without wrapping it in str(). It’s kind of annoying. pycharm does work though. Beyond that pydev I think is just as good if not better.

  • James Sasitorn

    Any Mac-only suggestions?

    • Anonymous Coward

      Yeh, stop wasting your money ;)

      • Anonymous admirer

        Very nice burn. But yeah id sooner just set the cash on fire.. time prolly better spent that way.

  • James Sokolowski

    Any votes for Spyder or Geany?? I’m pretty happy with Eclipse/PyDev, but want to try others IF I ever get a chance…

    • J.W

      I like geany very much, It is as powerful as most other IDE’s but twice as lightweight as most… It also has addons to enable advanced debugging, and it runs python files just fine from within the editor(just hit F5) I use it on Linux and it’s great. It should probably work just fine on Windows or any other OS as well.

    • J.W

      Spyder seems pretty good, but from my knowledge it is mainly for scientific programming.

      • MartinHvidberg

        What’s “Scientific programming”? I have worked with sciense for many years, but can’t see that it calls for any specific type of programming.

  • wpgabriel

    Eric ide, ninja ide, geany.

    • J.W

      The last time i tried Ninja IDE it almost immediately crashed, I’m gonna try it again though because it seemed to be pretty good from the reviews i read.

  • Pingback: IDEs, Code Editors, for Python, Django Development

  • Yohann

    Aptana Studio 3 is pretty awesome…it even supports django projects apart from python, php and a whole lot more….

    • Maginot

      +1 aptana

  • DM

    +1 for Geany, it has all the features I need and more.

  • khageshwar

    i think any of these ide is best in their places…

  • Eugene

    +1 Wing IDE

    • Anonymous coward II

      Yes !
      On a friend’s advise I used, and purchased WingIDE.
      It is performant, nice, and simple to use!
      May be the best Python IDE on Windows. (And Linux too)

      Elipse for Python is a pain to install, and a pain to use: slow, complicated…

      On Linux, DDD with the python add-in works really well, but it is not as nice to use as WingIDE, not so complete too.

      Anonymous Coward II

      • http://www.facebook.com/gene.novak.54 Gene Novak

        I don’t know what you’re talking about. All you need for pydev w/eclipse is to download the eclipse program which runs out of it’s own directory.Then you need to go find pydev’s web site, get the repository and add it to eclipse’s package management. Choose it and install it.It handles any dependencies.It’s pretty easy actually.

  • Rakesh Singh

    I like Editra although it’s still a test release.
    If you have wxPython installed, you already have it.
    Pydev is great, but Eclipse is too big and slow.

  • Dmitri

    I use Eclipse with PyDev.

  • J.W

    Nobody mentioned SPE(Stani’s Python Editor) I haven’t used it much, But it seems to be pretty good, And it’s probably worth a try(I’ve only tried it on linux(Fedora) But I believe it is cross-platform.) Also Geany is good, And even the Python IDLE is good for small scripts and/or beginners just trying to learn. Also I like Nano alot(for pretty much everything :P) And of course there’s always Emacs(with the python plugin) and Vim.

  • http://1000tonlab.wordpress.com miltonlab

    Emacs :)

    • Fabricio Todeschini

      Best Exelent choice

    • emperorcezar

      If it only had a good text editor. ;) (I do use Emacs)

  • Demian Brecht

    I’m obviously a little late to the party, but my personal preference *by far* is Vim. I actually feel rather naked when I’m on a system that doesn’t have it. Vim *can* provide you with all features of other IDEs (with sufficient configuration). The two biggest draws for me are:

    1) Cross-platform: I can install Cygwin or GVim on Windows, and it’s readily available for Mac and Linux. The most important feature to me, however, is that I can run the *exact* same editor environment on remote machines through SSH (given your .vimrc matches as well as any plugins in your home directory). Having matching environments across systems is important when dealing with cloud deployment and such imo.

    2) Lighweight. Vim is about as bare-bones as it gets by default and even when loaded with a whole whack of plugins, is still lighter than 99% of the GUI IDEs out there that I’ve played with.

    Note: The downside to Vim is its relatively high learning curve.

    Also note: This comment isn’t meant to start an Emacs vs. Vim flame war, it’s to add in what is unfairly judged as “just an editor” into an IDE comparison chart.

  • Pingback: List of Handy Python Links for the Padawan Learner | The Mostly Technical Adventures of Bob

  • Pingback: Best IDEs for Python Development - Python Central

  • Moonshinefe

    Put my vote in for PyCharm. Great IDE.

  • frlan

    You missed Geany ;)

    • http://profile.e-ware.org/ OpenCode

      I use Geany for work and with some personal snippets and templates is the best IDE. It isn’t written in java like others software so it’s very fast and clean.

      • n3storm

        Me too :) scm integration, pylint checking (not while coding yet) and so lightweight

  • menestrwell

    vi :D

  • Paolo Plaoo Monni

    Ninja-ide and aptana studio

  • Arne Babenhauserheide

    Emacs still beats all of them for me:

    – Cross platform
    – Free Software
    – Can do almost anything named for any software in the article: http://emacswiki.org/emacs/PythonProgrammingInEmacs (except for eclipse-style auto-import, which you really should not need in python, but which would not be too hard to add yourself by hooking into the auto-completion)
    – Works equally well in graphical mode and in the shell.
    – Can be used for all other programming languages, too, so learn it once, use it for everything.

  • PeteD

    PyScripter http://code.google.com/p/pyscripter/
    is a great. I use both PyDev and PyScripter. For any quick modules I use PyScripter and projects PyDev

  • Pingback: Python editors | Alaskalanguage

  • Adam Connor

    Comparison articles should always have a date.

    • Jackson Cooper

      Hi Adam! Manager of the site here. Agreed. We’re working on a new theme that’ll feature the publish and last updated date. Hopefully it’ll be out soon.

  • CLeach

    Once you go PyCharm. You never go back.

  • Reno Coast

    “Best IDEs for Python Development”

    Oh, Good Grief!

    For a Python beginner looking to find a good IDE / Editor to learn with: after reading all of these “Community Comments” it is like being in a house of mirrors; I’m totally lost.
    Few of you agree on anything!
    As a kid in a candy store, there is too much to chose from and too little experience with what’s inside the wrapper.
    Where to start…. ‘um
    print “?”
    exit()

  • DrStereo

    I we have Visual Studio 2012 for WPF development, but I’ve set up a Python environment using Python Tools and I’m liking it a lot.

  • SysadminMan

    I program almost exclusively in Python and prefer Pycharm by far. The language injection with html, javascript, sql is awesome too, especially with its built in django support.

  • Pingback: What Can I Do With Raspberry Pi? - AndroidPCReview.com

  • arpython

    Many thanks.

  • Stephan

    What about Wing IDE?

  • clod

    I suggest to look at Codelobster also: http://www.codelobster.com

  • Ashish

    I find Visual Studio best as IDE for Python. You can detailed information about using Visual Studio as Python IDE @ http://ftg.heart-hackers.com/2014/05/best-ide-for-python-visual-studio.html

    • http://blog.aligoren.net Ali

      Visual Studio bad ide. But if you want use Sublime it’s great :) or PyCharm good ide but Better than Sublime Text :)

      • Jim parker

        “Visual Studio bad ide” — hahahahaha, you’re funny, or stupid. One or the other.

        • vodkar

          Or both.