PyQt导入错误

6
我有一个非常简单的PyQt程序。
import sys
from PyQt4.QtGui import *

app = QApplication(sys.argv)

widget = QWidget()
widget.show()

sys.exit(app.exec_())

当我双击运行程序时,它可以成功运行。但是当我在命令行中运行它:python test.py,我遇到了以下错误。
Traceback (most recent call last):
  File "test.py", line 2, in <module>
    from PyQt4.QtGui import *
ImportError: No module named PyQt4.QtGui

2
你可能正在从命令行调用不同的Python解释器。你在哪个平台上?有没有可能安装了多个解释器?尝试比较从命令行和双击运行文件时的输出import sys; print sys.executable - Joe Kington
谢谢Joe!我的惠普电脑预装了一个Python解释器,位于C:\ hp \ bin \ python,我之前并不知道。 - Byron
@Joe:那应该是一个答案,而不是一个评论。 - Macke
@Macke 不,这样作为评论是可以的。他促使OP提供更多信息并提出建议,而不是事实性答案。如果OP在建议的帮助下解决了问题,则应该自己添加答案说明解决方案并接受它。 - Dennis
http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.10.3/PyQt4-4.10.3-gpl-Py2.7-Qt4.8.5-x64.exe - 在 Windows 7 64 位上安装它 - user285594
3个回答

4

PyQt的安装还取决于您平台上安装的Python版本。Python3.+与小于3.x版本的Python不兼容。

我曾经遇到过同样的问题,因为我在我的机器上安装了Python 2.7,但是我下载了最新的二进制文件 PyQt-Py3.2-x86-gpl-4.9.exe。如果您在这里查看,可以看到二进制文件中提到了Python版本,即Py3.2。我卸载了PyQt并安装了PyQt-Py2.7-x86-gpl-4.9.exe,它指向Python 2.7,并解决了问题。

也许他们可以在在线文档或某些文档中提到命名约定,使其更加简单易懂。


我有同样的问题。我下载了PyQt5-5.2.1-gpl-Py3.3-Qt5.2.1-x64,但它不能与Python 2.7一起使用。我找不到适用于Python 2的合适的PyQt5安装程序。有吗?我需要从源代码构建吗?还是我需要使用PyQt4?PyQt5应该与Python 2.6+兼容。 - Sam Kauffman

0

由于您正在使用Windows,因此需要找到Python安装目录并将其添加到PATH中。

将以下行追加到现有路径中(请务必将“Path\To\Python”替换为正确的路径),是的,分号是必需的。

;C:\Path\To\Python

1
谢谢 SeeJay。我通过从 PATH 中删除重复的 Python 解释器解决了问题。 - Byron

0
"""
0) Windows 7 - 64-bit installed 

1) install python 2.7.3 (64-bit)

  http://www.python.org/ftp/python/2.7.3/python-2.7.3.amd64.msi

2) install pyqt4: 

  http://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.10.3/PyQt4-4.10.3-gpl-Py2.7-Qt4.8.5-x64.exe

"""

# Play!
import sys
from PyQt4.QtGui import *
app = QApplication(sys.argv)
widget = QWidget()
widget.show()
sys.exit(app.exec_())

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接