PyQt4导入错误

PyQt4 Import Error

我已经下载了 PyQt4,并且可以在 Idle 中毫无问题地使用它。但是,当我尝试在终端中执行命令时,我收到错误

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

我很乐意就此问题获得一些指导。

谢谢

我已经解决了同样的问题,我发现问题出在文件'pyuic4'中。设置了错误的版本 python。

你可以运行代码--which pyuic4--找到pyuic4在哪里,然后用texteditor打开这个文件(eg.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

如果 return 结果是:

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 是正确的版本。