Python 生态里,Qt 系的 GUI 库是桌面开发的主流选择。但这个领域有一个让无数开发者头疼的问题:授权。不同的库,授权规则差异悬殊,一不小心就可能踩坑------尤其是打算商业化的项目。下面把几个主要库的授权逻辑梳理清楚。
🗺️ 主要库一览
目前 Python 中基于 Qt 的主流 GUI 库有四个,分为两大家族:

两大家族的核心差异,就在于授权协议。
⚖️ 授权协议对比
PyQt5 / PyQt6 ------ GPL + 商业双轨制
PyQt 系列由英国公司 Riverbank Computing 维护,采用"二选一"的双授权模式:
- GPL v3(开源协议) :免费使用,但你的整个项目必须同样以 GPL 开源。这意味着你不能闭源,不能卖软件而不公开代码。对商业软件来说,这几乎是死路。
- 商业授权 :需要向 Riverbank Computing 购买。目前单开发者授权约为 550 欧元,续费约为原价的 60%。购买后可闭源分发,享有优先技术支持和一年更新。
Riverbank 官方的 FAQ 说得很直白: "如果你的应用授权协议与 GPL 不兼容,就必须在开始销售前购买商业授权。"
PySide2 / PySide6 ------ LGPL(对商业更友好)
PySide 系列由 Qt 官方 维护,采用 LGPL v3 协议(Lesser GPL,宽松版 GPL):
- LGPL 的核心优势 :你可以在闭源商业项目 中使用 PySide,无需购买商业授权,也无需公开你自己的业务代码。
- LGPL 的限制:你需要动态链接 Qt 库(而非静态编译进去),并且允许用户替换 Qt 库本身。实际操作中,用 pip 安装、正常打包分发,基本都符合要求。
- Qt 官方也提供商业授权版本的 PySide6,主要面向需要静态链接、或需要使用某些仅商业版才有的 Qt 模块的企业用户。
📊 核心差异速查表
| 库 | 维护方 | 免费协议 | 商业闭源 | 商业授权费用 |
|---|---|---|---|---|
| PyQt5 | Riverbank Computing | GPL v3 | ❌ 需购买 | ~550 欧元/开发者 |
| PyQt6 | Riverbank Computing | GPL v3 | ❌ 需购买 | ~550 欧元/开发者 |
| PySide2 | Qt 官方 | LGPL v3 | ✅ 免费可用 | 可选(企业增值) |
| PySide6 | Qt 官方 | LGPL v3 | ✅ 免费可用 | 可选(企业增值) |
💡 实战建议
如果你在做商业项目,PySide6 几乎是默认最优解------LGPL 协议允许闭源分发,官方维护质量有保障,API 与 PyQt6 高度相似,迁移成本低。
如果你在做开源项目,PyQt5/PyQt6 和 PySide 都可以自由选择,PyQt 的社区文档和第三方教程相对更丰富一些。
一个常见误区:有人以为"内部使用、不对外销售"就不需要商业授权。Riverbank 的 FAQ 明确指出,只要你的分发协议与 GPL 不兼容(哪怕只是公司内部部署),就需要商业授权。
总结一句话:想省钱又想闭源,选 PySide6;愿意开源或愿意付费,PyQt 也是成熟选择。 授权问题在项目启动前想清楚,比上线前补救要轻松得多。
参考来源