跳转至

Python Qt 简介

点击这里,边看视频讲解,边学习以下内容

Python图形界面开发的几种方案

前面的教程中,我们程序的用户交互界面都是命令行终端窗口。

程序的用户交互界面,英文称之为 UI (user interface)

当一个应用的 UI 比较复杂的时候,命令行方式就不便用户使用了,这时我们需要图形界面。

如果用 Python 语言开发 跨平台 的图形界面的程序,主要有3种选择:

  • Tkinter

基于Tk的Python库,这是Python官方采用的标准库,优点是作为Python标准库、稳定、发布程序较小,缺点是控件相对较少。

  • wxPython

基于wxWidgets的Python库,优点是控件比较丰富,缺点是稳定性相对差点、文档少、用户少。

  • PySide2/PySide6、PyQt5/PyQt6

基于Qt 的Python库,优点是控件比较丰富、跨平台体验好、文档完善、用户多。

缺点是 库比较大,发布出来的程序比较大。



白月黑羽的建议是,如果大家要开发小工具,界面比较简单,可以采用Tkinter。

如果是发布功能比较多的正式产品,采用 基于Qt的 PySide2/PySide6、PyQt5/PyQt6

本教程介绍的就是 使用 PySide2、PyQt5 开发Python程序的图形界面。

点击这里,了解实战班Qt项目实战

学员学完后应用到工作中的范例

PySide 和 PyQt 简介

PySide2/PySide6、PyQt5/PyQt6 都是基于著名的 Qt 库。

Qt库里面有非常强大的图形界面开发库,但是Qt库是C++语言开发的,PySide2、PyQt5可以让我们通过Python语言使用Qt。

但是 PySide、PyQt 这两者有什么区别呢?

可以形象地这样说: PySide 是Qt的 亲儿子 , PyQt 是Qt还没有亲儿子之前的收的 义子 (Riverbank Computing这个公司开发的)。

两个库的使用 对程序员来说,差别很小:它们的调用接口几乎一模一样。

如果你的程序是PyQt5开发的,往往只要略作修改,比如把导入的名字从 PyQt5 换成 PySide2 就行了。反之亦然。

Note

注意:必须先具备Python基础知识,才可以学习本教程。还没有Python基础的朋友,可以直接学习本网站的Python基础教程。

安装 PySide6 / PySide2

很简单,直接执行pip命令安装

pip install pyside6

或者使用清华大学源安装

pip install pyside6 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyside2

或者使用清华大学源安装

pip install pyside2 -i https://pypi.tuna.tsinghua.edu.cn/simple

Python版本兼容性

在我更新这篇文章时(2024年10月22日),我的测试结果

安装 PySide2, 要求 Python版本 <= 3.10

安装 Pyside6, 要求 Python版本 >= 3.8 (3.6 和 3.7 没有测试过)

具体的小版本的对应关系,可以看官网 https://wiki.qt.io/Qt_for_Python

安装 PyQt6 / PyQt5

如果你选择PyQt,而不是PySide,执行如下命令安装

pip install pyqt6-tools

或者使用清华大学源安装

pip install pyqt6-tools -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pyqt5-tools

或者使用清华大学源安装

pip install pyqt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple

即可同时安装 PyQt 和 一些重要的工具,比如 Qt designer。

您需要高效学习,找工作? 点击咨询 报名实战班

点击查看学员就业情况