ImportError: DLL load failed while importing QtWidgets: 找不到指定的程序里写自定义

使用环境

python:3.8.0 anconda 虚拟环境

遇到问题

如题所示,我在使用from PyQt5.QtWidgets import QApplication, QWidget
导入PyQt5相关包的时候出现错误

按照网上方法尝试解决问题

复制到python3.dll到虚拟环境

很多时候是由于python版本更新后,没有python3.dll这个动态链接库,我从python官网重新下载了一个python3.8的安装包,在虚拟环境之外安装了一个3.8.0的python,然后把其中的python3.dll复制到虚拟环境中,没有解决问题,因为我原本就存在这个动态链接库

重新安装PyQt5

删除所有的PyQt5相关的包,包括PyQt5、PyQt5-tools,再重新安装,情况依旧,我就试着降低PyQt5的版本,看是否是因为他们与python3.8.0不兼容,还是不行

修改系统环境

在这里插入图片描述
情况依旧

山穷水尽

没办法了,我查了了很多前人的做法,叫我重新建一个虚拟环境,我想这样也没有解决问题,后来我看到了这篇博客,作者说是: 先卸载当前的PyQt5,然后查看终端环境使用的python和IDE当前的python是否一致,如果不一致,将其切换一致后再次安装即可,我代开命令行窗口,输入 pip --version 查看当前电脑默认环境,结果是python3.9.7, 这个默认环境是按照anconda的默认python版本,即如果要再虚拟环境中也运行PyQt5,就需要虚拟环境的版本不低于python3.9.7。

说到底,还是要重新安装一个虚拟环境,后来我想一下,直接就在base环境安装就好了,到此,问题解决了。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐