问题
Poetry管理Project的场景,安装PyQT5后使用类似from PyQt5 import QtCore等会出现报错ImportError: DLL load failed: 找不到指定的程序
原因分析
在全局环境使用pip安装PyQt5不会有此问题。
使用Poetry add PyQt5安装PyQt5.15+版本时,由于PyQT5 metadata更新,Poetry解析依赖性时会出现问题。参考github poetry的issuehttps://github.com/python-poetry/poetry/issues/314。
因此PyQt5-qt没有在执行add命令时安装,引起了dll无法找到的问题。
解决方法
方法一:Poetry add PyQt5-qt手动安装
方法二:回退到PyQT低版本,如5.12