【问题标题】:PyQt 4.7 - ImportError after installing on WindowsPyQt 4.7 - 在 Windows 上安装后的 ImportError
【发布时间】:2010-01-26 16:33:36
【问题描述】:

我一直在尝试在 Vista 上安装 PyQt 4.7,但是当我尝试安装时遇到 ImportError:from PyQt4 import QtCore, QtGui

ImportError: DLL load failed: 找不到指定的模块。

我检查了我的系统路径,C:\Python31\Lib\site-packages\PyQt4\bin 在那里。

我无法运行任何示例,但 Designer、Assistant 和 Linguist 运行良好。

我使用的是 ActivePython 3.1,如果这有什么不同的话。而且我还没有安装任何以前版本的 PyQt。


编辑:

我已将 QtCore4 和 GtGui4 dll 复制到 C:\Python31\Lib\site-packages\PyQt4。这修复了一些示例,但我仍然无法使用示例浏览器。

【问题讨论】:

  • 我认为 PyQt4 安装不正确...尝试重新安装(请参阅下面的更新答案)
  • 投反对票的人:请给我一个理由,这样我可以从中吸取教训。
  • 对于此类 DLL 错误,您可以使用 Microsoft 的进程监视器 (technet.microsoft.com/en-us/sysinternals/bb896645) 来查看正在搜索哪些 DLL、搜索它们的位置以及每次搜索是否失败/成功。
  • 检查路径,Qt/bin的路径应该在Python和Python/Scripts的路径之前

标签: python windows pyqt importerror


【解决方案1】:

你确定你的 PyQt 版本有一个\bin 目录吗? 我正在运行 PyQt 4.4,我所有的二进制文件都在:

C:\Python31\Lib\site-packages\PyQt4

这也是我的路径所指向的。 听起来 PyQt4 安装不正确……你运行过这个吗?

python setup.py install

那里不应该有一个垃圾桶......

【讨论】:

  • 设计器和所有dll都在bin目录下。
  • 不,我运行了二进制安装程序。
  • 复制了bin目录下的所有文件并更改了路径后,现在可以使用了。
【解决方案2】:

只是想插话,我在安装 WinXP 时遇到了同样的问题:

  • python 2.7
  • Qt 4.7.1 (10.05)
  • PyQt 4.8.1

我使用了所有这 3 个项目的 Windows 安装程序版本。

C:\Python27\Lib\site-packages\PyQt4\bin 文件夹的内容复制到 PyQt 主文件夹(C:\Python27\Lib\site-packages \PyQt4) 停止了 python 抛出的 'dll not found' 错误。

【讨论】:

    【解决方案3】:

    也加入进来。我使用 Windows 安装程序在 Windows 7 机器上安装了 python 2.6 和 PyQt 4.8.3(我没有运行“python setup.py install”)。

    我尝试运行 spyder(需要 PyQt 4.4 或更高版本)但失败了,因为它找不到 PyQt .dll。我将所有 .dll 从 \Lib\site-packages\PyQt4\bin 文件夹复制到 \Lib\site-packages\PyQt4 文件夹,并且 spyder 启动正常。

    【讨论】:

      【解决方案4】:

      PyQt 安装还取决于你的平台上安装的 python 版本。Python3.+ 与 Python 版本

      我遇到了与我的机器上安装了 Python 2.7 相同的问题,但我下载了最新的二进制文件 PyQt-Py3.2-x86-gpl-4.9.exe。如果您在此处看到二进制文件,则在 PyQt 之后的名称中也提到了 Python 版本,即 Py3.2。我卸载了 PyQt 并安装了指向 Python 2.7 的 PyQt-Py2.7-x86-gpl-4.9.exe 并解决了问题。

      他们可能会在网上或在某些文档中提到更简单的命名约定。

      【讨论】:

        【解决方案5】:

        我遇到了同样的问题。我在 Eclipse 中运行了我的程序,但是当我尝试直接从命令行运行它时,我仍然遇到了同样的错误。

        我通过重命名 C:\Users\Me\AppData\Roaming\Python\Python27\site-packages\PyQt4 目录解决了这个问题。 (我猜是之前安装的 PyQt 的剩余部分)

        我正在使用 ActivePython。

        【讨论】:

          【解决方案6】:

          我认为至少有两种可能的错误情况

          1. ImportError: DLL load failed: 找不到指定的模块。

          那么你必须检查你的 PyQT 版本是否与你的 python 兼容。换句话说,如果你使用 python 3.3,那么你只能使用 PyQT for python3.3,而 python 3.3 将无法使用 PyQT for python3.4

          这就是我遇到的问题。我通过重新安装解决了它

          2。导入错误:DLL 加载失败:%1 然后在不同的编码 Win32 上有些奇怪。

          那么这将是一个操作系统问题。如果你使用 32 位 Python,那么你必须使用 32 位 PyQt,64 位也是如此

          【讨论】:

            【解决方案7】:

            以下是我在 Windows 7 上修复这些错误的方法:

            1. http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyqt4。 确保版本与您的 Python 版本完全相同(即 Python 3.3 不适用于 Python 3.4 的 PyQT)。如果您使用的是 64 位计算机,请务必下载 64 位版本,反之亦然。
            2. 用 7zip 提取轮子
            3. 将 PyQt4-4.11.4.data(或类似)目录重命名为 PyQt4
            4. 转到 PyQt4\purelib\PyQt4\ 并将所有内容移动到根 PyQt4 文件夹。您现在可以删除 purelib 文件夹
            5. 将整个 PyQt4 文件夹复制到 Python 解释器的“站点包”文件夹(例如 C:\Python34\Lib\site-packages)
            6. 转到 PyQt4\data\Lib\site-packages 并将所有文件移动到 C:\Python34\Lib\site-packages\

            【讨论】:

              【解决方案8】:

              就我而言,我需要 MSVCP140.dll。我已经通过下载 Visual C++ Redistributable for Visual Studio 2015 解决了这个问题:

              https://www.microsoft.com/en-us/download/details.aspx?id=48145

              MSVCP140.dll missing得到这个解决方案

              我在 Windows7 中使用 Pyqt4 和 Python 3.6。

              【讨论】:

                猜你喜欢
                • 2019-10-28
                • 2019-06-21
                • 2015-11-10
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2018-05-08
                • 1970-01-01
                相关资源
                最近更新 更多