【问题标题】:PyQt4.QtCore doesn't contain many of its classes and attributesPyQt4.QtCore 不包含它的许多类和属性
【发布时间】:2011-05-28 19:19:08
【问题描述】:

我已经从源代码构建了 PyQt4,一切都很顺利,直到我尝试使用 QtCore 中的一些类和属性。出于某种原因,QtCore 缺少很多应该存在的功能和数据。例如 from PyQt4.QtCore import QT_VERSION_STR 是一个导入错误。构建软件包时没有给出错误或警告,我也尝试过使用 yum 的 PyQt 软件包,但我遇到了同样的问题。

以前有没有人遇到过这个问题?

谢谢。

【问题讨论】:

    标签: python linux qt4 pyqt


    【解决方案1】:

    如果它真的是ImportError,则表明它无法完全导入库。检查它是否确实在您的sys.path 中,并且from PyQt4 import QtCore 有效。

    如果库存在,而 QT_VERSION_STR 不存在,它将为您提供 NameError 而不是 ImportError

    【讨论】:

    • 该库确实存在,我可以导入它,但缺少一些功能,例如 QT_VERSION_STR。它给出了一个导入错误,但正如你所说,它可能应该给出一个名称错误。如果我尝试以 PyQt4.QtCore.QT_VERSION_STR 的形式访问它,它确实会出现属性错误。我认为这是 PyQt4 的构建问题,但它没有给出任何错误建议。
    • 好吧,如果你只是导入 PyQt4,它会给你一个属性错误,因为这不会拉入 QtCore。但如果你的发行版的包是相同的,它表明还有其他问题。 from PyQt4 import QtCore 有效吗?那么dir(QtCore) 给了什么?
    • 我可以导入 QtCore 并在其上使用 dir 只为我提供了应该存在的部分功能。我似乎获得了所有功能,但没有获得类或全局属性。
    【解决方案2】:

    这个问题的原因是我的 python 路径有冲突。我在 python 路径的不同位置有两个名为 sip.py 的模块,python 路径使用第一个,但我希望它使用第二个。我从 python 路径中删除了第一个条目,因为它不是必需的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-11-12
      • 2016-08-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-01-13
      • 2011-10-15
      相关资源
      最近更新 更多