Some Popular Python GUI Libraries

Here we will talk about some of the popular Python GUI Libraries, we will compare the three major GUI libraries their positives and negatives.

Let’s look at some of the most popular options available to Python developers and see how they stack up. All three are cross-platform and can be used on your operating system of choice.

Eclipse with PyDev

It’s hard to write anything about open source integrated development environments without covering Eclipse, which has a huge developer community and countless plugins available allowing you to customize it to meet nearly any need you can imagine. But this kitchen sink approach is also one of Eclipse’s downsides. Many criticize it as bloated, and performance on low spec systems certainly can be an issue.

That said, if you’re coming to Python from a background in a different language, particularly Java, Eclipse may already be your go to IDE. And if you make use of its many features, you may find life without them difficult.

PyDev adds a huge number of features to Eclipse, far beyond simple code highlighting. It handles code completion, integrates Python debugging, adds a token browser, refactoring tools, and much more. For those working with the popular Django Python web framework, PyDev will allow you to create new Django projects, execute Django actions via hotkeys, and use a separate run configuration just for Django.

Eclipse and PyDev are both made available under the Eclipse Public License

PYDEV Python GUI Libraries

 

Eric

Eric is my personal favorite IDE for Python editing. Named after Monty Python’s Eric Idle, Eric is actually written in Python using the Qt framework.

Eric makes use of Scintilla, a source code editing component which is used in a number of different IDEs and editors which is also available as the stand-alone SciTE editor.

The features of Eric are similar to other IDEs: brace matching, code completion, a class browser, integrated unit tests, etc. It also has a Qt form preview function, which is useful if you’re developing a Qt GUI for your application, and I personally like the integrated task list function.

I’ve heard some criticisms of Eric’s documentation, which primarily being delivered through a massive PDF does leave something to be desired, but if you take the time to learn it, I find Eric to be a lighweight yet full-featured programming environment.

Eric is made available under the GPL version 3.

 

PyCharm

PyCharm is another popular Python editor and rounds out my top three. Pycharm is a commercial product, but the makers also offer a community edition which is free and open source under the Apache 2.0 license.

PyCharm features pretty much everything one might hope for in an IDE: integrated unit testing, code inspection, integrated version control, code refactoring tools, a variety of tools for project navigation, as well as the highlighting and automated completion features you would expect with any IDE.

To me, the main drawback of PyCharm is its open core model. Many of PyCharm’s advanced features are not available under an open source license, and for me, that’s a deal breaker. However, if you’re not looking to use the more advanced features included in the closed source verion, having the features left out may leave PyCharm as a lighter weight choice for Python editing.

PYCHARM Python GUI Libraries

Other great options for Python GUI Libraries

The list of open source Python editors and integrated development environments is lengthy. Here are a few other interesting standouts.

  • PyScripter, LeoEditor, and PTK (the Python Tool Kit) are all lesser-known tools for working with Python code. And of course there’s IDLE, the default IDE packaged with Python.
  • Bluefish and Geany are two great general purpose IDEs with strong Python support.
  • Spyder is an IDE specifically designed for working with scientific Python development and the libraries commonly associated with this type of work.

Please comment for any concerns or suggestions.