QtPy: Abstraction layer for PyQt5, PySide2, PyQt6, and PySide6

Schimon Jehudah sjehuda at yandex.com
Sun Dec 3 17:15:58 GMT 2023


Greetings

I figured this might be of good use to Falkon.

> QtPy is a small abstraction layer that lets you write applications
> using a single API call to either PyQt or PySide.
> 
> It provides support for PyQt5, PySide2, PyQt6 and PySide6 using the
> Qt5 layout (where the QtGui module has been split into QtGui and
> QtWidgets).
> 
> Basically, you can write your code as if you were using PyQt or
> PySide directly, but import Qt modules from qtpy instead of PyQt5,
> PySide2, PyQt6 or PySide6.
> 
> Accordingly, when porting code between different Qt bindings (PyQt vs
> PySide) or Qt versions (Qt5 vs Qt6), QtPy makes this much more
> painless, and allows you to easily and incrementally transition
> between them. QtPy handles incompatibilities and differences between
> bindings or Qt versions for you while keeping your project running,
> so you can focus more on your own code and less on keeping track of
> supporting every Qt version and binding. Furthermore, when you do
> want to upgrade or support new bindings, it allows you to update your
> project module by module rather than all at once. You can check out
> examples of this approach in projects using QtPy, like git-cola.

Source: https://github.com/spyder-ide/qtpy

Kind regards,
Schimon


More information about the Falkon mailing list