ImportError cannot import name ‘uic’ from ‘PyQt5’
1、描述
使用nuitka把PyQt5打包exe文件时报错:
ImportError cannot import name ‘uic’ from ‘PyQt5’
2、原因
这个是由于无法找到uic的目录导致的,在PyQt5的目录下是有uic文件的。
3、解决方案
找到导入uic的代码行,比如pyqtgraph,流程:
1、获取当前脚本所在的目录
current_dir = os.path.dirname(os.path.abspath(__file__))
2、获取上一层目录的路径
current_dir = os.path.dirname(current_dir)
3、获取PyQt5所在目录
current_dir = os.path.dirname(current_dir)
4、拼接uic所在的PyQt5目录
uic_dir = current_dir + '/PyQt5'
print('uic_dir', uic_dir)
5、将uic_dir目录添加到sys.path中
6、把from PyQt5 import uic改为 import uic
# from PyQt5 import uic
import uic