Qt for Python

Qt for Python offers Python bindings for Qt, enabling the use of Qt5 APIs in Python applications. It lets Python developers utilize the full potential of Qt, using the PySide2 module.

The PySide2 module provides access to the individual Qt modules such as QtCore, QtGui, and so on. Qt for Python also comes with the Shiboken2 CPython binding code generator, which can be used to generate Python bindings for your C or C++ code.

Qt Modules

Basic modules

These are the main modules that will help you build a Widget based UI.

Qt Core

Provides core non-GUI functionality, like signal and slots, properties, base classes of item models, serialization, etc.

Qt Gui

Extends QtCore with GUI functionality: Events, windows and screens, OpenGL and raster-based 2D painting, images.

Qt Widgets

Ready to use Widgets for your application, including also graphical elements for your UI.

QML and Qt Quick

If you want to use the Qml Language <https://doc.qt.io/qt-5/qmlapplications.html>, these modules will help you interact with it from Python.

Qt Qml

Base Python API to interact with the QML module.

Qt Quick

Provides classes for embedding Qt Quick in Qt applications.

Qt QuickWidgets

Provides the QQuickWidget class for embedding Qt Quick in widget-based applications.

Data visualization

Charts, diagrams, animations: these modules provide a large amount of classes that can help you include these elements in your UI.

Qt Charts

Provides a set of easy to use chart components.

Qt DataVisualization

Provides a way to visualize data in 3D as bar, scatter, and surface graphs.


Audio, video, and hardware interaction: check these modules if you are looking for multimedia solutions.

Qt Multimedia

Provides low-level multimedia functionality.

Qt MultimediaWidgets

Provides the widget-based multimedia API.


If your project is based on a browser or the features around web based applications, these modules will help you to interact with them.

Qt WebEngineWidgets

Provides widgets that can handle web content.

Qt WebChannel

Enables peer-to-peer communication between a server and a client (HTML/JavaScript or QML application).

All the modules

There are many other modules currently supported by PySide2, here you can find a complete list of them.

Check all the modules

Display a table with all the currently supported Qt modules.