【问题标题】:ImportError PyQt5 AnacondaImportError PyQt5 Anaconda
【发布时间】:2017-07-18 18:30:22
【问题描述】:

我正在尝试在 Windows 10 x64 的 Anaconda 环境中使用通过 pip 安装的 PyQt5。 这就是我创建环境的方式:

conda create --name qt python=3.6
activate qt
pip install pyqt5

运行示例应用程序时出现错误:

文件“pyqt_test.py”,第 16 行,在 从 PyQt5.QtWidgets 导入 QApplication、QWidget ImportError: DLL load failed: 找不到指定的模块。

通过从 python.org 下载 Python 来安装 Python,然后安装 pyqt5 可以正常工作。

感谢您的帮助。

【问题讨论】:

  • 为什么要使用 pip 将软件包安装到 conda 环境中?为什么不使用conda install pyqt5

标签: python qt anaconda pyqt5


【解决方案1】:

是因为缺少Python3.dll(stub dll,重新导出了Python3x.dll函数,所以一个版本的扩展可以适用于多个版本的python)。

如果您的 Python 发行版没有捆绑 python3.dll,您可以尝试使用 WinPython (https://winpython.github.io/) 中的一个。

至少 2017/04/01 版本应该有它。

1) 下载 WinPython(“零”版本就足够了;必须与您的 Python 相同的“主版本” - 3.5/3.6 - 和“位” - 32/64 - !!!)。

2) 解压到某个临时目录,获取 python3.dll 并将其粘贴到 python 目录中,靠近 python3x.dll。

3) 享受工作的 QT

【讨论】:

  • 我已按照此步骤操作,但没有任何成功。有任何想法吗?虽然 PyCharm 中的自动完成功能有效,并且导入行没有下划线,就好像找不到包一样。
  • @Iskrinjar 这是很久以前的事了,当时这是主要的来源(python 的版本已经先进了......)。可能是您需要更新的 Python3.dll(如果您有一个并覆盖了它,请尝试将其取回)。唯一确定的方法是使用一些依赖遍历器来确定您的安装有什么问题。例如这个:dependencywalker.com——打开你试图加载的 .pyd 模块并检查丢失的导入(尝试在你的 python 树中找到该文件,或者找出要下载的正确版本,然后将其粘贴python 查找 dll 的一些目录)...
【解决方案2】:

遇到同样的问题,Miloslav 是对的,实际上 conda 似乎也应该提供一个 python3.dll,请参阅此处的讨论https://github.com/ContinuumIO/anaconda-issues/issues/1394

简而言之,只需使用 conda 通过运行来安装 pyqt5:

conda install pyqt

这会安装最新的 pyqt 绑定,目前是 pyqt 5.6

【讨论】:

  • 然后为了使用它做一个类型import pyqt 然后它导入pyqt5?
  • 您没有告诉我们安装 pyqt 绑定的正确方法,只是安装 pyqt 会导致导入失败。
【解决方案3】:

就我而言,首先我安装了 pyqt:

conda install pyqt

然后我删除了位于 python.exe 旁边的 qt.conf 文件。接下来pyqt5安装成功:

conda install pyqt5

参考:https://github.com/ContinuumIO/anaconda-issues/issues/138

【讨论】:

    猜你喜欢
    • 2022-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多