QtPy: Abstraction layer for PyQt5/PyQt4/PySide2/PySide
Copyright © 2009- The Spyder Development Team.
Important Announcement: Spyder is unfunded!
Since mid November/2017, Anaconda, Inc has stopped funding Spyder development, after doing it for the past 18 months. Because of that, development will focus from now on maintaining Spyder 3 at a much slower pace than before.
If you want to contribute to maintain Spyder, please consider donating at
We appreciate all the help you can provide us and can't thank you enough for supporting the work of Spyder devs and Spyder development.
If you want to know more about this, please read this page.
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, PyQt4, PySide2 and PySide using the Qt5 layout (where the QtGui module has been split into QtGui and QtWidgets).
Basically, you write your code as if you were using PySide2 but import Qt modules
qtpy instead of
Attribution and acknowledgements
pyqode.qt this is not a namespace package, so it is not tied
to a particular project or namespace.
This project is licensed under the MIT license.
You need PyQt5, PyQt4, PySide2 or PySide installed in your system to make use
of QtPy. If several of these packages are found, PyQt5 is used by
default unless you set the
QT_API environment variable.
QT_API can take the following values:
pyqt5(to use PyQt5).
pyqt4(to use PyQt4).
pyside2(to use PySide2)
pyside(to use PySide).
pip install qtpy
conda install qtpy
Everyone is welcome to contribute!
Support us with a monthly donation and help us continue our activities.
Become a sponsor to get your logo on our README on Github.