繁体   English   中英

在Windows 7中安装PyQt5

[英]installing PyQt5 in Windows 7

我用Python 3.4编写了一个程序,并且想要为其创建GUI。 我发现PyQt5-是它的工具。

1)我已经下载并安装了PyQt5二进制软件包( http://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-5.4.1/PyQt5-5.4.1-gpl-Py3.4-Qt5。 4.1-x32.exe )。

2)我尝试在Python中运行以下示例代码:

import sys
from PyQt5.QtWidgets import QApplication, QWidget


if __name__ == '__main__':
    app = QApplication(sys.argv)
    w = QWidget()
    w.resize(250, 150)
    w.move(300, 300)
    w.setWindowTitle('Simple')
    w.show()

    sys.exit(app.exec_())

Python返回了错误:

Traceback (most recent call last):
  File "<frozen importlib._bootstrap>", line 2218, in _find_and_load_unlocked
AttributeError: 'module' object has no attribute '__path__'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\PyQt5.py", line 2, in <module>
    from PyQt5.QtWidgets import QApplication, QWidget
  File "D:\PyQt5.py", line 2, in <module>
    from PyQt5.QtWidgets import QApplication, QWidget
ImportError: No module named 'PyQt5.QtWidgets'; 'PyQt5' is not a package

3)我发现安装QT的建议。 因此,我下载并安装了QT( http://download.qt.io/official_releases/online_installers/qt-opensource-windows-x86-online.exe )。

4)然后,我卸载并再次安装了PyQt5二进制软件包。 没结果。

如果我运行,Python不会返回任何错误:

import PyQt5

但是,如果我尝试运行:

from PyQt5.QtWidgets import QApplication, QWidget

它返回与开始时相同的错误。

Traceback (most recent call last):
  File "<frozen importlib._bootstrap>", line 2218, in _find_and_load_unlocked
AttributeError: 'module' object has no attribute '__path__'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "D:\PyQt5.py", line 2, in <module>
    from PyQt5.QtWidgets import QApplication, QWidget
  File "D:\PyQt5.py", line 2, in <module>
    from PyQt5.QtWidgets import QApplication, QWidget
ImportError: No module named 'PyQt5.QtWidgets'; 'PyQt5' is not a package

我究竟做错了什么?

Python文档所述 ,除非篡改sys.path列表,否则包含输入脚本的目录将位于所有其他搜索路径之前。

并且目录D:\\已经包含要导入的模块PyQt5 尝试从不是包的模块中导入子模块QtWidgets会导致以下错误:

 File "D:\\PyQt5.py", line 2, in <module> from PyQt5.QtWidgets import QApplication, QWidget ImportError: No module named 'PyQt5.QtWidgets'; 'PyQt5' is not a package 

因此,请勿使用与程序包名称相同的名称来调用程序文件。

对于在那里的Google员工,这就是解决我的问题的方法:

您需要确保导入sys并具有适合import命令的大小写。

import sys
from PyQt5 import QtGui

那是PyQt5字符串的正确大小写。 这花了我一段时间才能弄清楚。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM