无法在 Python 3.7 中导入 PyQtChart

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 不会安装该模块。

eyl*_*esc 7

您必须安装相同版本的 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