目前python的qt 绑定有两种方式 pyqt 和 pyside。目前PyQt是由一家小公司Riverbank Computing维护的,PyQt历史更长一些,比较稳定,开发社区也比较大,有相关的deploy工具;而PySide(又名Qt for Python)现由Qt公司维护,比PyQt更年轻一些。截至2019年,最新版本是PyQt5和PySide2。PySide6是2020年发行的。PySide2和PySide6,分别是基于C++下的Qt5和Qt6开发的。
其实他俩API挺相似的,最大的区别是License,PyQt是GPL协议,Qt for Python是LGPL协议。目前从各方面来看PyQt速度更快、工具更齐全,个人觉得是开发时间比较早的原因,根据开源协议,Qt for Python的实现要避开PyQt已经实现部分的实现方法。但Qt for Python由Qt公司官方支持,而且开源可商用,目测未来发展会超越PyQt。
如果不确定用哪款,还有一种方法是加个中间层。有人对它们API做了包装,参见:QtPy - Github
PySide2使用的是LGPL协议,通过一定的手段(调用库、wrapper等),可以在发布程序时合法合理地闭源或使用其他开源协议。
PyQt5有两种授权协议:GPL开源协议或商用闭源协议。前者意味着直接使用PyQt5的程序也需要基于GPL协议开源,而后者需要支付购买费用,才能闭源使用。
apt install python3-pip
方式一[pyside2]:
pip3 install pyside2
$ pip3 show pyside2
Name: PySide2
Version: 5.15.2.1
Summary: Python bindings for the Qt cross-platform application and UI framework
Home-page: https://www.pyside.org
Author: Qt for Python Team
Author-email: pyside@qt-project.org
License: LGPL
Location: /usr/local/lib/python3.6/dist-packages
Requires: shiboken2
此处有pyside2的相关例子
$ cd /usr/local/lib/python3.6/dist-packages/PySide2/examples
将ui文件转成py文件pyside2-uic form.ui -o ui_form.py
文章来源:https://www.toymoban.com/news/detail-596543.html
方式二[pyqt5]:
pip3 install pyqt5
apt install pyqt5-dev-tools
将ui文件转成py文件pyuic5 -o ui_form.py form.ui
文章来源地址https://www.toymoban.com/news/detail-596543.html
参考资料
- PySide2 与 Pyqt5 的区别
- Qt for Python | Qt的官方Python组件
- PyQt5 教程 (w3schools.cn)
到了这里,关于Qt for Python的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!