阿雪的学习记录|Anaconda安装PyQt5、pyinstaller打包等相关问题解决

安装步骤和我的上一篇阿雪的学习记录|Anaconda(python3.6)安装PyQt5步骤相同,但先别急着看!先看完这篇,否则安装好后你Spyder会打不开,当然如果已经按照上一篇那么安了的,也出现了相同问题的也可以参考这篇。

1. 安装好PyQt5后Spyder打不开

上篇当时遇到了安装好之后Spyder打不开的问题,在网上寻找相关解决方法,包括但不限于:重装spyder,重装anaconda,重装python,重装PyQt5,更新各种版本等等,试过其中自认为性价比低一点的方法,然后导致连anaconda都打不开,在此细说一下自己的解决方法。

首先已知
PyQt5 中 QtWebKitWidgets 改名了
5.11.3: QtWebKitWidgets
5.12: QtWebEngineWidgets
我的PyQt版本比较低,低于5.11,所以该教程仅限于5.11.3及以下出现问题的,5.12以上的不了解,不保证能解决你的问题~

先列出我的各种版本:
Windows10 64bit
Anaconda4.4.0
Spyder3.1.4
Python3.6.1
QT5.7.1
PyQt5 5.7.1
其中,Spyder、Python、QT、PyQt5都是安装了Anaconda后直接就有的,即便在cmd里用pip list看不到pyqt5,打开Spyder-Help-About Spyder…,也可以看到你的PyQt版本,如图所示:
在这里插入图片描述
为了验证你是有PyQt5的,可以在cmd里先进入python环境,输入

import PyQt5

返回不报错就说明你有,且可以用,但是这个问题是,你已经又安装了一次PyQt5,所以导致打不开Spyder的唯一原因就是,你安装的PyQt5版本比你Spyder里显示的Anaconda自带的PyQt5版本高,可以用这种方法查看你安装的版本和自带版本的路径:
查看你安装的PyQt5路径:
在cmd里进入python环境,importPyQt5的库:

C:\Users\223072088>python
Python 3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)] on win32
Type “help”, “copyright”, “credits” or “license” for more information.

 import PyQt5

查找PyQt5所在位置:

PyQt5.__file__

就会显示你安装的版本的PyQt5的安装路径,这个路径应该是以Python\\lib\\site-packages开头的路径,因为你自己安装的前提一定是自己还又安装了python,所以路径就在python下。
查看Anaconda自带的PyQt5路径:
在Anaconda Prompt进入python环境,importPyQt的库:

(C:\software\Anaconda3) C:\Users\223072088>python
Python 3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)] on win32
Type “help”, “copyright”, “credits” or “license” for more information.

查找方法和上面一样

import PyQt5
PyQt5.__file__

就显示Anaconda自带的PyQt5路径,比如我的是'C:\\software\\Anaconda3\\lib\\site-packages\\PyQt5\\__init__.py',就反正是Anaconda\\lib\\site-packages开头。
你会发现你安装的版本比Anaconda自带版本高,比如我当初安装的5.8,我自带的是5.7.1,那么你现在要做的就是把5.8卸载,pip uninstall PyQt5这个命令把PyQt5卸载掉,加版本号卸载也行都一样,然后安装等于或低于Anaconda自带版本的PyQt5,安装就和上篇博客说的一样,你电脑能直接pip install就别费劲找轮子了,我当时找了个一模一样版本的安装了,完了再去用上面两个找路径的办法找,就都返回Anaconda路径的了。
即便如此,不可以卸载之后直接用自带的!因为内置版本里缺很多东西,直观特征有两个:1.在安装对应版本的PyQt-tools时它找不到Anaconda自带的PyQt5,会提示你安装PyQt5;2.在C:\software\Anaconda3\Lib\site-packages\PyQt5这个路径里有一些文件和文件夹,但是只有__pycache__uic两个文件夹,没有Qt文件夹。反正这两个特征都表明,你无法安装PyQt5-tools,从而找不到designer。
至此,你的Spyder可以正常使用了,也可以用designer设计UI了。

提示

在问题1解决后,想要正常使用还必须手动安装PyQt_tools,安装好后designer.exe就在这个文件夹里C:\software\Anaconda3\Lib\site-packages\pyqt5-tools
安装的时候会报错,报错会告诉你要先安装PyQt5_sip(或者sip)等等等等,具体可以参考上一篇博客,反正它报错让你安什么你就安什么,注意需要满足它提示里说的版本范围。

2.在打包程序时出现错误

AttributeError: Module ‘PyQt5‘ has no attribute ‘version

这个问题的原因和上面一样,你安装的PyQt5版本高了,在打包的时候高版本的PyQt5打包不了你在Spyder里import的低版本的PyQt5库。

3.在打包后exe文件打不开

ImportError DLL load failed 找不到指定的程序

一样的,也是你PyQt5版本高了,而且需要合适版本的pyinstaller(不过这个也就俩版本,一个python2一个python3,一般不会安错),按照问题1的核实了之后就都好了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值