While I personally have a favorite Python editor, I’ll try to go through several editors. I believe that someone out there should start packing Python with a better default editor as it makes coding in Python much more difficult than it should be. At the bare minimum, you should be using Notepad++ over the default Python editor. You will still need to find a way to execute the script, but at least it has some intellisense about the language. In case you do not know what intellisense is, it is basically an aid that when you are typing code, it suggests functions, classes, etc while you are typing.
My personal favorite is… PyCharm! I am actually quite a fan of several JetBrains products. One benefit of using PyCharm is that it is based on a set of shortcut standards for several of their products. When you move into Java or .Net, they have editors for both (well, .NET is more like a plugin called “Resharper”). Another perk of PyCharm is that you can debug in the editor. Once you get some scripts running and start your journey into OOP (object oriented programming), try to dig into PyCharm’s shortcuts and use them as much as you can. The biggest downside to PyCharm is that if you want to maintain a Django project, you must buy the professional edition. To learn more about PyCharm and how to make coding in Python more fun, take some time and study this book.
I won’t go into as much detail on the other editors as my experience with them is far less than with PyCharm. However, I do like PyDev because you can install it on Eclipse. If you haven’t played with Eclipse much, it’s almost like a more advanced universal editor where you can install various plugins for different languages. Obviously, this is beneficial because you only need to open one editor to work on any type of project. Anyway, PyDev has many of the great features that PyCharm has including debugging, intellisense, and more. Although, I still consider PyCharm to be the much better experience, PyDev allows Django development for free!
Other Python Editors
PyCharm and PyDev, in my opinion, are the top two editors for Python and Django. In third place, WingIDE is really powerful, but it just seems like a very old and quirky editor. Perhaps I’m shallow, but I like my editors to look as great as they feel to use.
As for other editors, I won’t recommend them as I haven’t found any that compete with those three. Nevertheless, the important thing about picking an editor is to make sure it feels good to you. You want an editor than makes coding both fun and productive. Have fun shopping for your new Python editor!