【问题标题】:Unable to find module 'PyQt.uic.port_v3' when converting .ui to .py file将 .ui 转换为 .py 文件时找不到模块“PyQt.uic.port_v3”
【发布时间】:2015-04-26 08:01:31
【问题描述】:

我被困在将使用 QT Designer 创建的 .ui 文件转换为 .py 文件的第一步。

系统详情(PATH 中的所有程序):

  • Windows 8
  • Python 3.4.3-x32
  • Qt 5.4.1 x32
  • PyQT 5.4.1-Py3.4-Qt5.4.1-x32
  • PYTHONPATHC:\python34

在终端窗口中,从包含 .ui 文件的目录中运行以下命令:

pyuic5 -x mainform.ui -o mainform.py

这会引发错误:

C:\python34\python.exe:查找“PyQt5.uic.pyuic”规范时出错 (:没有名为“PyQt.uic.port_v3”的模块)

我尝试卸载并重新安装 python、Qt 和 PyQt(按此顺序),但错误仍然存​​在。

作为一种解决方法,我正在使用 PySide,但是由于 PySide 项目似乎在过去两年中被冻结并且不支持 Qt 5,我会切换到 PyQt5。

【问题讨论】:

  • 你是用二进制包还是源码包安装的?另外,在终端中输入 pyuic5 命令会输出什么?
  • 我使用了二进制文件。 pyuic5 命令在终端窗口中的输出是:Error while Finding spec for 'PyQt5.uic.pyuic' (: No module named 'PyQt5.uic.port_v3')

标签: python qt pyqt5 pyuic


【解决方案1】:

我认为 PYTHONPATH 是站点包所在的位置。在您的情况下,在 Windows 下应该是 C:\Python34\Lib\site-packages 而不是 C:\Python34,我猜? 这可能是python找不到包的原因。

我最近在 Debian/testing 下升级 PyQt5(用于 Qt5.4)时遇到了类似的错误。包含 pyuic5 的 python2 的 pyqt5-dev-tools 已经消失,pyuic5 仅适用于 python3-pyqt5。在我安装了 python3 和 pyqt5 之后,我忘记了为 python3 导出站点包,我得到了这个错误。通过将 python3 站点包添加到 PYTHONPATH,问题已得到解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-11-13
    • 1970-01-01
    • 2021-10-06
    • 2014-04-11
    • 1970-01-01
    • 2021-11-03
    相关资源
    最近更新 更多