• Could not connect to Twitter

Choosing a Python IDE

Update (April 2009) – The Python Development Environments Learning Path covers all the following information and more.

[Note - Python Development Environments Part 1 and Part 2 should also be interesting to you]

Deciding on a Python IDE can take time and a lot of effort. There are lots of things to look for including good ergonomics and a good set of tools. You will probably be looking for a debugger, also syntax high-lighting and automatic indentation. More advanced features might include support for refactoring tools and source-code control.

We have some videos which might help you choose the right IDE.

Side note – are you learning Python? We’ve started Club ShowMeDo which is aimed at new and intermediate Python programmers, our specially-crafted screencast tutorials are aimed directly at getting you to learn Python the easy way.

Update – I asked a few days later Which Python IDEs Need Covering and received a strong response – can anyone help us to cover these IDEs?

Using PyDev set 1 and set 2: a great all-round IDE, PyDev has free and paid versions, a good debugger (Update but you can’t alter variables whilst debugging Fabio says that from v1.2.7 you can update variables in the debugger), good support for multiple files and has some refactoring tools. I use this as one of my main IDEs. Fabio responds to emails quickly.

Using Wing set 1 and set 2: another great all-round IDE, this is my alternate choice of IDE. Wing is commercial, has a stronger debugger than PyDev, has good support for multiple files. Wing doesn’t have any refactoring tools (not the end of the world, but it would be nice to have basic refactoring support). Stephen and crew respond quickly to support emails.

IDLE video (and bonus): bundled with the default Python distribution. This is an old workhorse, it has all the features you need for working on small projects (I’m not sure if it gives much aid when working on larger projects containing many files?). The Bicycle Repair Man refactoring tool can be added to IDLE.

SPE videos: One of the longer-running open-source editors. Good navigation and syntax high-lighting support. I don’t remember seeing refactoring tools. This was the first IDE I used, it is easy to get going with SPE for simple projects. [Update - Stani notes that the upcoming version of SPE (0.8.5) will have refactoring support, the current version supports editing variables during a debug session, and he asks if anyone would like to make ShowMeDo videos for the new version].

IPython set 1, set 2, set 3: Less of an IDE and more of a great environment. IPython is my shell of choice – it has everything from the stock Python shell and a whole heap more. Coupled with a simple text editor you have everything you need to quickly develop and test new ideas. Fernando and team’s open-source shell is great, I highly recommend you check this out.

DrPython videos: We have two videos that show DrPython in action, here and here. DrPython is aimed at beginners, providing a nice and simple environment to learn Python coding. We’d love to have some videos focused on DrPython if someone would like to have a go?

About ShowMeDo:

Learn to write Python software using our python tutorial videos – most are free and some are in our Club.

Club ShowMeDo is aimed at new and intermediate Python programmers, our specially-crafted Python training screencasts are aimed directly at getting you to learn Python the easy way.

Please share:
  • DZone
  • del.icio.us
  • Reddit
  • Furl
  • Ma.gnolia
  • email
  • StumbleUpon
  • Technorati
  • TwitThis
  • Slashdot
If you enjoyed this post, make sure you subscribe to my RSS feed!

Related posts:

  1. Get Going with Python 2: Python Development Environments (IDEs) part 1
  2. Get Going with Python 2: Python Development Environments (IDEs) part 2
  3. Choosing a Python IDE – Which IDEs need covering?
  4. ShowMeDo teaches Python from February 9th
  5. New Python ShowMeDo: Introducing the pydb Debugger

6 comments to Choosing a Python IDE

  • Just to give a quick update on SPE. With the winpdb debugger included with SPE you can alter variables during debugging, like this in the debugging shell: exec variable = ‘other value’. Also refactoring tools are in the pipeline for SPE 0.8.5! They are ready, but need some testing. If someone wants to do another showmedo video about SPE, they can contact me at: http://pythonide.stani.be

  • Fabio Zadrozny

    Quick update on pydev: you can already update variables in the debugger (from 1.2.7 onwards).

  • [...] My previous post on Choosing a Python IDE generated rather a lot of interest. We already have videos on PyDev, Wing, SPE, IPython and DrPython, but that only covers some of the main Python IDEs. [...]

  • [...] ShowMeDo es una página web que contiene vídeotutoriales. Los hay de Python, de Java, de Blender… de muchísimas cosas. Pues en el blog de ShowMeDo hay un tema sobre algunos IDE’s para Python y los vídeos que tienen demostrando su uso, para que sea más fácil elegir con cual quedarnos. Es más: hay un segundo tema para que se pidan vídeos de otros IDEs. Por supuesto no faltan vídeos de SPE ni de Pydev [...]

  • Another IDE to consider is ActiveGrid (disclosure: I work there). ActiveGrid is a visual development platform based on Python/wxwidgets that follows the model-view-controller design pattern.

    Developer composes application using visual data editor to create XSD files, visual page editor to create html/XForm files, visual action editor to create BPEL files. All components in the tool are treated as web services, making this a good GUI builder/IDE for web services as well. Custom actions can be written in Python with Apache Mod Python and Python debugging built in.

    More info at dev.activegrid.com

  • Thanks for the additional information. I don’t know anything about ActiveGrid. Perhaps someone there would like to make a free ShowMeDo showing the Python community how it works? We have a very strong audience interested in learning about all the Python tools that can make their lives easier.