我已经在许多帖子中看到过这个问题,但是没有一个答案对我有帮助。这是我的问题。
我在窗户上。我有python 3.6版本
1)加载PyQt4的车轮文件(PyQt4 4-4.11.4-cp36-cp36m-win_amd64.whl):http://www.lfd.uci.edu/~gohlke/pythonlibs/
我把它保存在这里:C:\Users\安妮-索菲
2)以admin身份打开shell窗口,并运行"pip install PyQt4 4-4.11.4-cp36-cp36m-win_amd64.whl“。
即使我收到了这样的信息,安装似乎仍然有效:
Requirement 'PyQt4-4.11.4-cp36-cp36m-win_amd64.whl' looks like a filename, but the file does not exist当我重新运行"pip install PyQt4 4-4.11.4-cp 36-cp36m-win_ also 64“时,我仍然收到这条消息,但我也得到了"Requirement already satisfied: PyQt4==4.11.4 from file:///C:/WINDOWS/system32/PyQt4-4.11.4-cp36-cp36m-win_amd64.whl in c:\users\anne-sophie\anaconda3\lib\site-packages"。
3)现在,当我打开一个python记事本并写"import PyQt4“时,我没有发现任何错误。
但是,当我编写from PyQt4 import QtGui时,我会得到错误消息:ImportError: cannot import name 'QtGui'
4)我去了C:\Users\Anne-Sophie\Anaconda3\Lib\site-packages\PyQt4,我发现QtGui不是在PyQt4中,而是在PyQt4 4/sip中,所以我写了from PyQt4.sip import QtGui,这是有效的.
5)我访问这个PyQt4初学者的网站:https://pythonprogramming.net/basic-gui-pyqt-tutorial/
我写道:
import sys
from PyQt4.sip import QtGui
app = QtGui.QApplication(sys.argv)我得到了错误:AttributeError: module 'PyQt4.sip.QtGui' has no attribute 'QApplication'
最后,我的问题是: Q1:如果导入PyQt4工作,您认为
Requirement 'PyQt4-4.11.4-cp36-cp36m-win_amd64.whl' looks like a filename, but the file does not exist是一个问题(步骤2)吗? Q2:你知道我做错了什么吗?没有人使用from PyQt4.sip import QtGui,所以我不确定我是否应该这么做……此外,即使我这样做,我仍然会有错误,当我走得更远。 Q3:有人知道怎么做吗?
发布于 2017-08-09 10:26:35
Q1: --我认为您得到了错误消息('PyQt4-4.11.4-cp36-cp36m-win_amd64.whl' looks like a filename, but the file does not exist),因为您从一个与保存轮子文件的目录不同的目录运行pip命令,所以pip找不到轮子文件。它可能会继续从Package索引下载它,因为您第二次运行Pip时它说PyQt4已经安装好了。
Q2:不,您不应该在导入语句中包含sip。只要from PyQt4 import QtGui就行了。你的安装有问题。
Q3:问题很可能是在Anaconda的pyqt包旁边安装了pip (您可以使用conda list命令检查这个问题)。您不能为PyQt这样做。Pip和Anaconda通常合作得很好,但如果使用PyQt,则不会这样做,因为包名不同。
我建议您重新安装Anaconda,然后只使用Anaconda安装PyQt。
也许您已经尝试过了,但是使用了pip,因为Python3.6中没有PyQt4。如果您只想尝试本教程,可以将其降级为Python3.5。另一种选择是使用PyQt5。与PyQt4最大的不同之处在于,QtGui包已被拆分为QtWidgets和QtGui。因此,将示例转换为PyQt5应该很容易。
https://stackoverflow.com/questions/45565821
复制相似问题