【问题标题】:PyCharm and PyQt5 unresolved reference but workingPyCharm 和 PyQt5 未解决的参考,但工作
【发布时间】:2015-10-06 09:57:21
【问题描述】:

我已经使用 Windows 安装程序安装了 PyQt5。我尝试过创建一些窗口和东西,效果很好。尽管如此,pycharm 似乎不太喜欢 PyQt5,并且在我的代码中到处标记错误。

正如我所说,PyQt5 运行良好,但出现这些错误有点烦人,顺便说一下,我不能 alt + enter + 忽略它们。

我想这只是向 pycharm 添加引用或其他内容的问题,但我不知道该怎么做,我已经花了 1 小时试图在堆栈溢出中寻找解决方案,但它们都不起作用。我也试过重新安装。

我使用的是 64 位的 windows 7、python 3.4 和 32 位的 PyQt5,因为 64 出于某种原因无法正常工作。

【问题讨论】:

  • 乍一看,你的系统上可能安装了多个 python 解释器(因为你指定了“PyQt5 of 32bits because 64 didn't work for some reason”),所以检查你是否没有安装了 python 32 和 64 位。可能是 PyCharm 为您的项目使用了错误的解释器,因此它无法解析 PyQt5 模块(已为 32 位版本的 python 解释器安装)。如果不是这种情况,您可能想尝试重新索引项目(关闭并重新打开 PyCharm)。

标签: python pycharm pyqt5


【解决方案1】:

我遇到了类似的问题,因为我同时安装了 PyQt4 和 PyQt5。 一般来说,这会导致各种各样的问题,所以spyder-ide 家伙制作了qtpy 包,它在 PyQt5/PyQt4/PySide 之上提供了一个抽象。

如今qtpy 是 Anaconda 发行版中的标准库,您可以调用它来代替 PyQt5/PySide,如下所示:

from qtpy.QtCore import QFile, QFileInfo
from qtpy.QtGui import QIcon, QKeySequence, QPixmap

它解决了我在 PyCharm 中的这个特定问题。

【讨论】:

    【解决方案2】:

    我还安装了 32 位和 64 位 Python v3.5 和 PyQt5 版本。这无关紧要,因为我在 32 位 PI 中安装了 32 位 PyQt5 包,在 64 位 PI 中安装了 64 位 PyQt5 包。我从 Riverbanks 的 PyQt5 网站安装了 PyQt5 包。 Christopher Gohlke 的 Windows 扩展站点上还没有它们,PyCharm 的 PI 对话框甚至没有将 PyQt5 列为可用包。

    无论我为我正在处理的 PyQt5 项目选择 32 位 PI 还是 64 位 PI,PyCharm 确实错误地标记了许多警告。这似乎只是 PyQt5 代码的一个装饰性错误,因为代码确实运行正确,即使我从 PyCharm 的终端窗口运行代码也是如此。此外,请注意 PyQt5 未列在 PyCharm 的 PI 设置对话框中,即使 Windows 10 文件资源管理器确实在正确的站点包文件夹中列出了正确的包。执行 PyCharm 无效/重启没有帮助。

    也就是说,您不必也不应该禁止对所有内容发出警告。仅针对 PyCharm 的不正确 PyQt5 警告逐个禁止警告。你可以这样做:

    def __init__(self):
        # noinspection PyArgumentList
        super().__init__()
    

    【讨论】:

      【解决方案3】:

      在我的情况下,我需要在 PyCharm 中转到 File -> Settings -> Project: MyProject -> Project structure 并选择正确的 Project Interpreter

      【讨论】:

        【解决方案4】:

        另一种可能且简单的方法是:

        1. 以管理员身份打开命令提示符
        2. 输入“pip”(不带引号)
        3. 输入:pip show PyQt5(这会显示 PyQt5 的安装位置。
        4. 按照从命令提示符提供给您的跟踪。现在,打开文件夹“site-packages”并将每个名为“PyQt5”的文件夹复制到“lib”文件夹(忽略那些带有“.. - info”的文件夹是无关紧要的)。

        在 Pycharm 或 Visual Studios 中,红色下划线消失,“未解决引用”的问题被消除。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-11-12
          • 1970-01-01
          • 2014-02-09
          • 2021-02-17
          相关资源
          最近更新 更多