About PyQt
PyQt is a comprehensive set of Python bindings for the Qt cross-platform GUI/XML/SQL C++ framework from Qt Software (renamed from Trolltech). PyQt provides bindings for Qt 2 and Qt 3. PyQt4, a separate set of bindings, covers the Qt 4 series of releases.
PyQt implements around 300 classes and over 5,750 functions and methods including:
- a substantial set of GUI widgets
classes for accessing SQL databases (ODBC, MySQL, PostgreSQL, Oracle)
QScintilla, Scintilla-based rich text editor widget
- data aware widgets that are automatically populated from a database
- an XML parser
- SVG support
- classes for embedding ActiveX controls on Windows (only in commercial version)
Earlier versions of PyQt included a graphical debugger called eric, written using PyQt, which can be used to debug PyQt and ordinary Python console applications. It's now available separately as eric3 from https://www.die-offenbachs.de/eric/index.html.
PyQt includes pyuic which generates Python code from GUI designs created with Qt Designer. This makes PyQt very useful as a rapid prototyping tool for applications that will eventually be (partly or completely) implemented in C++ because the user interface designs can be re-used without modification.
PyQt is available for Windows, UNIX/Linux, Mac OS X and the Sharp Zaurus.
PyQt4
PyQt4 is a set of Python bindings for Qt 4 that exposes much of the functionality of Qt 4 to Python. This version of PyQt is described in more detail on the PyQt4 page.
PyQt documentation
Current documentation is available at https://www.riverbankcomputing.com/static/Docs/PyQt4/pyqt4ref.html.
Mark Summerfield's book, Rapid GUI Programming with Python and Qt, is an up-to-date guide to GUI application development with Python 2.5, PyQt4 and Qt 4.2/4.3. More information can be found at https://www.qtrac.eu/pyqtbook.html. Mark recommends, incidentally, GUI Bloopers, as appropriate supplementary reading for PyQt programmers.
Boudewijn Rempt's book, GUI Programming with Python: Qt Edition, is available at https://www.commandprompt.com/community/pyqt/.
The PyQt4 tutorial available at https://zetcode.com/tutorials/pyqt4/
A tutorial presented by Jonathan Gardner at the 2003 Northwest Linux Fest is available at JonathanGardnerPyQtTutorial.
A tutorial presented by Oleksandr Yakovlyev for embedding PyQt in C++/Qt application EmbedingPyQtTutorial
PyQt applications
Some applications that use PyQt as their UI layer:
fastPATX - A simple and easy to use PyQt4 web browser. https://patx44.appspot.com/fastpatx
Edit conflict - other version:
fastPATX - A simple and easy to use PyQt4 web browser. https://patx44.appspot.com/fastpatx/
Edit conflict - your version:
End of edit conflict
Camelot - A friendly GUI library on top of SQLAlchemy,Elixir, inspired by the Django admin interface. https://www.conceptive.be/projects/camelot
ConvertAll - a versatile unit converter https://www.bellz.org/convertall/.
Eric IDE - an integrated development environment for python https://www.die-offenbachs.de/eric/index.html
FlyWay - a route planner for pilots https://www.bellz.org/flyway/.
imgSeek - Photo collection manager with content-based search and many other features https://imgseek.sourceforge.net/.
Incubus Data Modeler - Free (GPL) data modeler CASE tool https://incubus.sf.net
Kodos - Python Regular Expressions Debugger https://kodos.sourceforge.net/.
Orange - data mining by visual programming https://www.ailab.si/orange
Leo - Editor, data manager https://webpages.charter.net/edreamleo/front.html.
Paythyme - a UK statutory payroll https://www.paythyme.org.uk
PyPI Browser - a PyQt4-based GUI browser for the Python Package Index https://www.boddie.org.uk/david/Projects/Python/PyPI-Browser/
Q4Banking - a Qt4 port of the QBanking frontend from the AqBanking Library https://www.apaku.de/linux/q4banking/index.php
rpCalc - a reverse polish notation calculator https://rpcalc.bellz.org/.
Schevo - a data management system https://schevo.org
TreeLine - a tree-structured PIM https://treeline.bellz.org/.
XPathEvaluator - a PyQt4-based tool that helps you "write" XPath expressions https://www.apaku.de/linux/xpathevaluator/index.php
Anki - A PyQt4-based program designed to help you remember facts (such as words and phrases in a foreign language) as easily, quickly and efficiently as possible. https://ichi2.net/anki
A more up to date list of applications can be found on the PyQt Wiki.
Links to other resources
A Wiki dedicated to PyQt and PyKDE can be found at The PyQt and PyKDE community Wiki. The https://www.riverbankcomputing.com/mailman/listinfo/pyqt is low in volume and high in quality. The Roadmap is always valuable to read.
Phil Thompson was interviewed about PyQt for KDE Dot News in August 2006, and profiled for SunWorld Online in 2000.