Outils pour utilisateurs

Outils du site


Panneau latéral

pyqt_pyside

PyQt vs PySide

Pour écrire une application avec une interface graphique en python, on parle souvent de Tk, livré par défaut avec python. C'est pratique, mais limité et assez éloigné des canons esthétiques modernes.

On peut aussi s'appuyer sur Qt, qui dispose notamment de module complémentaires tiers qui sont plutôt bons. Et certains projets comme la lib picamera2 proposent une intégration dans Qt.
Qt est un framework pour créer une interface graphique. Ecrit en C++, il nous faut une interface, un wrapper pour l'utiliser en python. 2 solutions se distinguent : PyQt et PySide.

PyQt est la solution historique, développé par un tiers, et qui s'est largement imposé. On trouve moultes tutos et articles pour éclairer son fonctionnement.
Seulement, le tiers souhaite en vivre et propose donc PyQt avec 2 licences, une GPL pour des projets non commerciaux, et une propriétaire pour des projets commerciaux.

PySide est le wrapper python proposé par l'éditeur de Qt directement. Proposé sous licence LGPL (moins restrictive). Cependant, la solution étant plus récente, elle est pour l'instant moins répandue et donc moins “célèbre”.

Sur la version 6 de Qt (Qt6), PySide6 est sortie sans délai, et PyQt6 est sortie dans la foulée. Les 2 modules sont complets et à jour.
Il n'y a presque pas de différence sur les API, elles sont toutes les 2 callées sur l'API C++ de Qt. Le code écrit pour l'un est compatible avec l'autre (à part les import et une exception ou deux, histoire de…).

pyqt_pyside.txt · Dernière modification: 2024/08/16 20:30 de luc