Skip to main content

Python Bindings for Qt

Qt for Python provides the official set of Python bindings and a binding generator for bringing the benefits of cross-platform development to your Python project.

Start by installing:
$ pip install pyside6

Python Bindings for Your UI & Middleware

Your Best Option for Python

The official Python bindings make Qt's functionality accessible in Python. Mature and well-maintained, the binding generator and the official bindings allow using all of Qt’s modules in Python to build modern, cross-platform, and feature-rich applications - without needing to know C++.

Easily Build the Kind of UI You Need

Whether you need a customized, modern user interface for mobile and desktop, or a simple, traditional desktop UI, Qt Python bindings have got you covered.

Leverage Qt’s Time-Saving Middleware

The Python bindings provide easy ways to set up, for example, connectivity, hardware integration, as well as data manipulation and visualization.

Create Stunning 2D &3D Graphics

Qt allows efficient rendering of thousands of items for high-performance 3D graphics, animated scenes, and vector graphics with smooth transitions and effects.

Video Thumbnail
EXPOSE C++ TO PYTHON

Your Shortcut to Cross-Platform Development

Fast, fun and easy - the Python bindings for Qt allow you to make use of Qt’s ready-made components and controls for your Python project. Exposing C++ libraries to Python lets you use high-performance code, create elaborate UIs, and avoid rewriting complex logic in Python.

You don’t need to know C++ to use Qt for Python, and you can make use of all the possible combinations between QLM, C++, and Python.

Pyside6_install
LEARN Qt FOR PYTHON

Getting Started with Python Bindings

Pretty much everything you can do with Qt Framework, you can do in Python. The official Python bindings for Qt come with two main components:

  • PySide6 for using Qt6 APIs in your Python applications
  • Shiboken6, a binding generator tool for exposing C++ projects to Python

Start by installing Qt for Python:
$ pip install pyside6

Easily Move between C++ and Python

Qt for Python keeps the Qt syntax, enabling you to move without much trouble from C++ to Python or the other way around. You can choose between keeping the Qt syntax or using the snake case.

Here’s what it looks like.

 Qt for python code examples

Example: How to Use the Python Bindings

Here’s a quick example of how to use the Python bindings for Qt to create a minimal application. You can also copy this code to use it.

 Qt for python code examples

Qt for Python allowed for all the operational and graphical aspects of the program to be coded in Python syntax.

See how Gamry Instruments leverages Python bindings for Qt:
Go to Their Story

python_community
GET MORE OUT OF THE PYTHON BINDINGS

Join the Community!

1M+ software developers love Qt as it makes you more productive - and programming more fun.

Join our community to exchange ideas, learn, share, and connect. Engage in the conversations, share insights, and get answers to all your questions about the Python bindings.

Oh, There’s More

 

The Mailing List

Get the latest news about the Python bindings for Qt and join our discussions.

Sign Up

 

The Qt for Python Wiki

Deep-dive into the technical aspects and help us grow the knowledge base.

Go to Wiki

 

Bug Tracker

Track, report, and discuss bugs, and make suggestions for future improvements.

Sign In to Bug Reports

 

Engage in IRC

Join the official IRC channel on FreeNode #qt-pyside to talk directly with the team.

Learn More

Qt Blog on Python

Year of the Snake: Qt for Python 6.9 is out!

2025 is the year of the snake! 🐍 and for that we are happy to tell yo...

Read more

Qt for Python release: 6.8 is out now!

We’re very happy to announce the latest release of Qt for Python 6.8. ...

Read more

Running your Qt Design Studio projects with Python

After the adoption of Qt Design Studio, many users started to wonder a...

Read more

More on Qt Framework

Qt Framework’s comprehensive set of libraries take away your routines from middleware to UI, 2D to 3D, platform to platform.

More on Releases & Licensing

The regular Qt Framework release cycle and the flexible licensing options allow you to choose the best fit to your product’s needs.

Get the Most out of Qt

Make use of Qt’s capabilities in Python and easily build modern, cross-platform applications.