PySide

PySide
Original author(s)The Qt Company (as part of Nokia)
Developer(s)The Qt Company
Initial releaseAugust 18, 2009; 14 years ago (2009-08-18)[1]
Stable release
6.6.2 / February 15, 2024; 2 months ago (2024-02-15)[2]
Written inPython
Operating systemLinux/X11, macOS, Windows
LicenseLGPL
Websitepyside.org qt.io/qt-for-python

PySide is a Python binding of the cross-platform GUI toolkit Qt developed by The Qt Company, as part of the Qt for Python project. It is one of the alternatives to the standard library package Tkinter. Like Qt, PySide is free software. PySide supports Linux/X11, macOS, and Microsoft Windows. The project can also be cross compiled to embedded systems like Raspberry Pi,[3][4] and Android devices.[5]

History

By 2009, Nokia, the then owners of the Qt toolkit, wanted Python binding available under the LGPL license. Nokia failed to reach an agreement with Riverbank Computing the developers of PyQt Python binding.[6] In August, Nokia released PySide. It provided similar functionality, but under the LGPL.[7][8] 'Side' is Finnish for binding.[6]

There have been three major versions of PySide:[9]

  • PySide supports Qt 4
  • PySide2 supports Qt 5
  • PySide6 supports Qt 6

PySide version 1 was released in August 2009 under the LGPL by Nokia,[1] then the owner of the Qt toolkit, after it failed to reach an agreement with PyQt developers Riverbank Computing[10] to change its licensing terms to include LGPL as an alternative license. It supported Qt 4 under the operating systems Linux/X11, Mac OS X, Microsoft Windows, Maemo and MeeGo,[11] while the PySide community added support for Android.[12]

PySide2 was started by Christian Tismer to port PySide from Qt 4 to Qt 5 in 2015.[13] The project was then folded into the Qt Project.[14] It was released in December 2018.[13]

PySide6 was released in December 2020. It added support for Qt 6 and removed support for all Python versions older than 3.6.[9]

The project started out using Boost.Python from the Boost C++ libraries for the bindings. It later created its own binding generator named Shiboken,[15] to reduce the size of the binaries and the memory footprint.[16][when?]

Hello, World! example

# Import PySide6 classes
import sys
from PySide6 import QtCore, QtWidgets

# Create a Qt application
app = QtWidgets.QApplication(sys.argv)

# Create a Window
mywindow = QtWidgets.QWidget()
mywindow.resize(320, 240)
mywindow.setWindowTitle('Hello, World!')

# Create a label and display it all together
mylabel = QtWidgets.QLabel(mywindow)
mylabel.setText('Hello, World!')
mylabel.setGeometry(QtCore.QRect(200, 200, 200, 200))

mywindow.show()

# Enter Qt application main loop
sys.exit(app.exec())

See also

  • Free and open-source software portal

References

  1. ^ a b "PySide has been released". PySide – Python for Qt. August 18, 2009. Archived from the original on October 25, 2009.
  2. ^ "PySide6 Release History". Python Package Index.
  3. ^ "Qt for Python Cross compilation". Qt. The Qt Company. April 13, 2022.
  4. ^ "Qt for Python details on the new 6.3 release". Qt. The Qt Company. April 13, 2022.
  5. ^ "Taking Qt for Python to Android". Qt. The Qt Company. April 13, 2022.
  6. ^ a b faq, Martin Fitzpatrick Last updated (2019-06-21). "PyQt5 vs PySide2: What's the difference between the two Python Qt libraries?". Python GUIs. Retrieved 2022-06-25.
  7. ^ "FAQ – PySide – Python for Qt". Pyside.org. Archived from the original on 2012-01-11. Retrieved 2009-09-03.
  8. ^ "PySide has been released – PySide – Python for Qt". Pyside.org. 2009-08-18. Archived from the original on 2009-10-25. Retrieved 2009-09-03.
  9. ^ a b Maureira-Fredes, Cristián (December 10, 2020). "Qt for Python 6 released". Qt. The Qt Company.
  10. ^ "PySide FAQ". Qt Wiki. July 31, 2017. Retrieved February 24, 2021.
  11. ^ "PySide Downloads". Qt Wiki. February 16, 2018. Retrieved February 24, 2021.
  12. ^ "PySide for Android guide". Qt Wiki. February 26, 2018. Retrieved February 24, 2021.
  13. ^ a b "Qt for Python". Qt Wiki. December 16, 2020. Retrieved February 24, 2021.
  14. ^ Knoll, Lars; Tismer, Christian (April 11, 2016). "Bringing pyside back to Qt Project". pyside-dev Google Group. Retrieved February 24, 2021.
  15. ^ "Shiboken". Qt Documentation. The Qt Company. Retrieved February 24, 2021.
  16. ^ "PySide Shiboken FAQ". Qt Wiki. June 5, 2016. Retrieved February 24, 2021.

External links

  • Official website
  • Official Documentation on the Qt Documentation web site
  • Qt for Python on the Qt wiki
  • Differences Between PySide and PyQt on the Qt wiki
  • v
  • t
  • e
Qt platform
GUIs built with QtQt technologiesToolsLanguage bindingsSupported platformsRelated topics
  • Software that uses Qt
  • KDE Software
  • Commons
  • v
  • t
  • e
Low-level
On AmigaOS
  • Intuition
On Classic Mac OS, macOS
On Windows
On Unix,
under X11
On BeOS, Haiku
Cross-platform
CLI
C
Java
On Android
CLI
  • Xamarin.Android
High-level, platform-specific
On AmigaOS
On Classic Mac OS, macOS
Object Pascal
Objective-C, Swift
C++
CLI
On Windows
CLI
C++
Object Pascal
On Unix,
under X11
On Android
High-level, cross-platform
C
C++
Objective-C
CLI
Adobe Flash
Go
  • Fyne
Haskell
Java
JavaScript
Common Lisp
Lua
  • IUP
Pascal
Object Pascal
Perl
PHP
Python
Ruby
Tcl
  • Tcl/Tk
XML
shell
  • Newt
  • CDK
  • Dialog
Dart
  • Flutter


Stub icon

This free and open-source software article is a stub. You can help Wikipedia by expanding it.

  • v
  • t
  • e