我已经下载了PyQt4,并且能够在空闲时使用它而没有任何问题。但是,当我尝试在终端中执行命令时,我收到错误
ImportError: No module named PyQt4
我运行的代码如下:
User-MacBook-Pro:Python $ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
User-MacBook-Pro:Python $ pyuic4 Print.ui>Print_ui.py
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyQt4/uic/pyuic.py", line 26, in <module>
from PyQt4 import QtCore
ImportError: No module named PyQt4
我希望能就这个问题得到一些指导。
谢谢
答案 0 :(得分:4)
我已经解决了同样的问题,我发现问题出在'pyuic4'文件中。设置了错误的python版本。
您可以运行代码 - which pyuic4
- 找到pyuic4的位置,然后通过texteditor打开此文件(例如.Sublime Text)。之后,您将在此文件中找到一行代码:
#!/bin/sh
exec pythonw2.7 //anaconda/lib/python2.7/site-packages/PyQt4/uic/pyuic.py ${1+"$@"}
因此,pyuic4
的功能是调用pythonw2.7并运行pyuic.py
。
在我的计算机中,我安装了anaconda
,因此PyQt4文件存储在anaconda PATH中,但pythonw2.7
将使用Apple supplid Python。在这种情况下,pythonw2.7无法导入模块PyQt4。将其更改为属于anaconda的pythonw
将解决问题。
在您的问题中,我认为您可以查看python版本,并将pyuic.py
中的默认版本pythonw更改为正确的版本。
只需使用pythonw运行以下文件:
/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/PyQt4/uic/pyuic.py
如果返回结果为:
Error: one input ui-file must be specified
而不是:
Traceback (most recent call last):
File "//anaconda/lib/python2.7/site-packages/PyQt4/uic/pyuic.py", line 26, in <module>
from PyQt4 import QtCore
ImportError: No module named PyQt4
pythonw是正确的版本。