GRAPHIC USER INTERFACE FAQ CHAPTER SEVEN 7.1 General GUI Questions 7.2 What platform-independent GUI toolkits exist for Python? 7.2.1 Tkinter 7.2.2 wxWidgets 7.2.3 Qt 71 Qt 4.5 upwards is licensed under the LGPL license; also, commercial licenses are available from The Qt Company. There are bindings available for the Qt toolkit (using either PyQt or PySide) and for KDE (PyKDE4). PyQt is currently more mature than PySide, but you must buy a PyQt license from Riverbank Computing if you want to write proprietary applications. PySide is free for all applications. Both wxWidgets and wxPython are free, open source, software with permissive licences that allow their use in com- mercial products as well as in freeware or shareware. wxPython is the Python binding for wxwidgets. While it often lags slightly behind the official wxWidgets releases, it also offers a number of features via pure Python extensions that are not available in other language bindings. There is an active wxPython user and developer community. wxWidgets (https://www.wxwidgets.org) is a free, portable GUI class library written in C++ that provides a native look and feel on a number of platforms, with Windows, Mac OS X, GTK, X11, all listed as current stable targets. Language bindings are available for a number of languages including Python, Perl, Ruby, etc. Standard builds of Python include an object-oriented interface to the Tcl/Tk widget set, called tkinter. This is probably the easiest to install (since it comes included with most binary distributions of Python) and use. For more info about Tk, including pointers to the source, see the Tcl/Tk home page. Tcl/Tk is fully portable to the Mac OS X, Windows, and Unix platforms. Depending on what platform(s) you are aiming at, there are several. Some of them haven’t been ported to Python 3 yet. At least Tkinter and Qt are known to be Python 3-compatible.