13

当我尝试为 Python-3.6 安装 PySide 时,它​​说它只在 Python-3.4 之前兼容。是否有任何解决方法可以为 Python-3.6 安装它?

似乎只支持这些 Python 版本:

[(2, 6), (2, 7), (3, 2), (3, 3), (3, 4)].
4

1 回答 1

22

要获得最新的 PySide,请安装来自 PyPI 的官方二进制轮子之一,其中包括捆绑的 Qt,因此是完全可移植的。

  • 对于 Qt5 - [Python 2.7 / Python >= 3.5]:

      pip install pyside2
    
  • 对于 Qt6 - [Python >= 3.6]:

      pip install pyside6
    

除非您需要支持旧系统,否则以下部分中提供的信息与PySide-1.2/Qt4旧系统相关并且不再相关

首先需要指出的是,PySide 依赖于 Qt4,官方不再支持(截至 2015 年 12 月)。因此,所有的开发工作现在都集中在 PySide2 和 Qt5 上。根据这个 tracker issue,没有计划在 Python-3.4 之后正式支持 PySide - 主要是由于资源不足和在 Windows 上编译困难。当前位置(截至 2017 年 2 月)似乎可以通过这篇文章进行总结:

这最后留下的基本上是一个 wontfix,因为需要修改 Qt 4.8 和 PySide 源以使用 Windows 上用于 Python 3.5 的编译器进行编译。此外,Qt 4.8 不再受支持,PySide 不应用于新项目。下一个版本 PySide2 是 Python 和 Qt 的未来,支持 Python 3.5。您可以在 Qt Wiki 上找到有关它的更多信息。

说了这么多,目前有几个 Linux 发行版维护 Python-3.5 和/或 Python-3.6 的 PySide 包。这通常只需要对生成绑定的 shiboken 工具打一个小补丁(例如,参见Arch Linux PKGBUILD)。此外,Christoph Gohlke 的非官方 Windows 二进制文件站点上提供了 Windows 轮子。(恐怕我对 Mac 的情况了解不多,但我确实为 Python-3.5 找到了这个轮子)。

所以 PySide 本身目前仍然与 Python-3.5 和 3.6 兼容——但官方安装程序不兼容。但是,如果您愿意修补工具链或使用非官方的二进制文件,这应该不是问题。实际上,PySide 和 Qt4 现在是冻结的代码库,因此除非对 Python 进行了一些真正彻底的更改,否则它“应该”在未来的几个版本中仍然可行。不过,未来是PySide2

于 2018-01-25T20:24:10.887 回答