python - 发生异常 : ImportError DLL load failed while importing QtWidgets: %1 is not a valid Win32 application

标签 python python-3.x pyqt5

我有两台运行 Windows 10 64 位的电脑,并且我在两台电脑上安装了 Python 3.8.1 和 Microsoft Visual Studio Code。奇怪的是,我仅在一台 PC 上遇到 PyQt5 导入问题,而另一台 PC 可以正常导入。

在我遇到问题的电脑中,我创建了一个项目目录,并通过执行设置了虚拟环境

virtualenv env

之后我激活了我的 virtualenv

.\env.\Scripts\activate

然后我安装了PyQt5==5.14.1并制作了一个简单的脚本

from PyQt5 import QtWidgets

执行此脚本后,出现以下错误

Exception has occurred: ImportError
DLL load failed while importing QtWidgets: %1 is not a valid Win32 application.
File "C:\Python\POS\test2.py", line 1, in <module>
from PyQt5 import QtWidgets

我以前从未遇到过此错误,并且我尝试了以下方法但没有解决此错误:

1) 以管理员权限启动 Visual Studio Code 2)尝试使用cmd运行test2.py脚本

从网上搜索,这个错误似乎可能与使用Python和PyQt5的不同架构有关,但我不知道如何进一步排查。我已经验证我的 Python 3.8.1 是 32 位,并且我认为当我执行时 pip install 会自动为我找到正确的包

pip install PyQt5 

所以它也应该是32位的?最让我困惑的是另一台电脑运行得很好,而且Python安装和虚拟环境设置都是一样的。

最佳答案

就我而言,我通过降级 PyQt5 解决了问题

pip install PyQt5==5.13

但是,仍然不确定为什么这个问题出现在我的一台 Windows 10 计算机上,而另一台安装了完全相同的 Python 和 Visual Studio Code 的计算机上则没有。

关于python - 发生异常 : ImportError DLL load failed while importing QtWidgets: %1 is not a valid Win32 application,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60024218/

相关文章:

python - 如何在 Python 中用补码表示二进制文字?

python - 如何更改 Django 中模型(类)的 HTML?

python - 在 Python 中用多个单词分割行

python - 是否有 pandas 函数来评估子字符串是否在给定字符串中?

python 如何捕获 suds web 服务 SOAP 错误

python - 在 raspberry-pi 中安装 QtVirtualkeyboard?

python - qtablewidget 设置水平标题标签可编辑以添加行

python - 算术运算符

python-3.x - 如何查询 GCP 日志查看器并在 Python 3.x 中获取 json 结果(如 gcloud logging read)

python - 与 PyQt5 QFileDialog 混淆