本文使用Anaconda+VSCode配置PyQt5环境,在开始之前新建Anaconda的虚拟环境,如果不需要虚拟环境可以直接使用默认的Base环境。另外针对ui文件转py文件报错ImportError: DLL load failed: 找不到指定的模块给出了解决办法
为了让避免项目所使用的Python及包模块版本冲突,所以需要代码运行的依赖环境彼此分开,业内有各种各样的成熟解决方案,但原理都是一样的:不同项目代码的运行,使用保存在不同路径下的python和各自的包模块;不同位置的python解释器和包模块就称之为虚拟环境,具体关系图如下:
虚拟环境的本质,就是在你电脑里安装了多个Python解释器(可执行程序),每个Python解释器又关联了很多个包、模块;项目代码在运行时,是使用特定路径下的那个Python解释器来执行
#格式如下
conda create -n 虚拟环境名字 python=版本 #创建虚拟环境,开始新项目时执行一次
conda activate 虚拟环境名字 #进入虚拟环境,每次打开终端都需要执行
conda deactivate #退出虚拟环境,一般很少使用
conda remove -n 虚拟环境名字 --all #删除虚拟环境,一般很少使用
#示例
conda create -n test python=3.8
conda activate test
conda deactivate
conda remove -n test --all
在新创建的虚拟环境中安装PyQt5
pip install PyQt5 -i https://pypi.tuna.tsinghua.edu.cn/simple/
pip install PyQt5-tools -i https://pypi.tuna.tsinghua.edu.cn/simple/
在vscode应用商店中安装PYQT Integration插件,安装完成后点击pyqt integration右下角的小齿轮,选择扩展设置extension settings,设置下面两个path(可以搜索anaconda和python的安装目录进行查找)
我的路径为D:\Anaconda3\Library\bin\designer.exe
我的路径为D:\Anaconda3\Scripts\pyuic5.exe

import sysfrom PyQt5.QtWidgets import QApplication, QMainWindowimport Ui_main #刚刚生成的py文件if __name__ =="__main__":app = QApplication(sys.argv)MainWindow = QMainWindow()ui = Ui_main.Ui_Form() # ui.setupUi(MainWindow)MainWindow.show()sys.exit(app.exec_())
将*.ui文件转为py文件使用的是pyuic5.exe程序,常用的命令为pyuic5 -o destination.py source.ui,其中-o 是操作参数,表示要生成一个文件,即将source.ui转换成destination.py。
在配置好PYQT Integration插件后,经常会遇到ImportError: DLL load failed: 找不到指定的模块的错误。常见原因有两个:
原因2的解决方法:
执行pip uninstall PyQt5再重新安装
如果还是不行,则使用pip list命令查看已安装的包,将里面有关PyQt 和Qt的相关项全部卸载,然后重新执行上面的“PyQt5安装”步骤
上一篇:函数和数组习题