Gen*_*ene 3 python pyqt python-3.x pyqt5
我可以使用 pip 安装 PyQtChart 而不会出错,但是我无法导入它,因为 Python (3.7.3) 告诉我没有这样的模块。
我在 Windows 10 上使用 Anaconda 的 Python 发行版,但它的 PyQt5 版本真的很旧。在看到 eyllanesc 提出的带有评论的问题后,我从 Anaconda 卸载了 PyQt5 并通过 pip 重新安装了(当前的 5.13 版本)。一切正常,我的 PyQt5 是最新版本,可以导入并且运行良好。但是 PyQtChart 没有导入。我是这样安装的:
OK> pip install --user PyQtChart
Collecting PyQtChart
Downloading https://files.pythonhosted.org/packages/a2/4c/2bf0482300e6ae407d33fcc098c310de00a86f3ee0755ae5419298e5e5c3/PyQtChart-5.13.0-5.13.1-cp35.cp36.cp37.cp38-none-win_amd64.whl (848kB)
|????????????????????????????????| 849kB 6.4MB/s
Requirement already satisfied: PyQt5>=5.13 in d:\programdata\anaconda3\lib\site-packages (from PyQtChart) (5.13.1)
Requirement already satisfied: PyQt5_sip<13,>=4.19.19 in d:\programdata\anaconda3\lib\site-packages (from PyQt5>=5.13->PyQtChart) (4.19.19)
Installing collected packages: PyQtChart
Successfully installed PyQtChart-5.13.0
OK> pip list
Package Version
---------------------- ---------
...
PyQt5 5.13.1
PyQt5-sip 4.19.19
PyQtChart 5.13.0
Run Code Online (Sandbox Code Playgroud)
当我导入时,出现错误:
ModuleNotFoundError: No module named 'PyQtChart'
Run Code Online (Sandbox Code Playgroud)
我还查看了 dir(PyQt5) 并且没有图表的子模块或组件。
如何才能正确导入?
编辑:正如我所提到的,我已经在寻找其他模块。此代码没有帮助,但请求。
import PyQt5
import PyQtChart as qtch
#from PyQt5 import QtChart
d = dir(PyQt5)
for i in d:
if "chart" in i.lower():
print(i)
Run Code Online (Sandbox Code Playgroud)
我尝试了多种安装和导入方法,包括建议的方法。Pip3 不会安装该模块。
您必须安装相同版本的 PyQt5 和 PyQtChart:
python -m pip install PyQt5==5.13 PyQtChart==5.13
Run Code Online (Sandbox Code Playgroud)
TL; 博士;
PyQt 是 Qt 的包装器,每个版本的 Qt 都会生成 .dll/.so,与其他版本不兼容。所以同样的问题转移到 PyQt。在您的情况下,观察到 PyQt5 和 PyQtChart 库使用不同版本的 Qt 产生不兼容性。
另一方面,模块被称为 X 并不意味着它是使用: 导入的import X,在 PyQtChart 的情况下,您应该使用: from PyQt5 import QtChart。