【问题标题】:PyCharm can't find reference in PyGame __initi__.py?PyCharm 在 PyGame __initi__.py 中找不到参考?
【发布时间】:2015-08-12 08:07:52
【问题描述】:

好的,我对编码很陌生,我只是在学习 Python。我想我会从一些基本的 Pygame 练习开始,尝试编写一些东西。

我已经安装了 Python 3.4.3 和 PyCharm。我还从这里安装了 Pygame 可执行文件“pygame-1.9.2a0-hg_5974ff8dae3c+.win32-py3.4.msi”:https://bitbucket.org/pygame/pygame/downloads

我运行了 Pygame 安装程序,它似乎已完成,没有明显问题,尽管我的桌面上没有明显的迹象,例如新的快捷方式。

然后我去这里尝试了一些涉及 Pygame 的基本测试代码: http://pythonprogramming.net/pygame-python-3-part-1-intro/

所以我将该示例中的代码复制到我的 Pycharm 中,然后运行它。它似乎创建了一个空白的 Pycharm 窗口,但是 PyCharm 代码检查器给了我几个警告,我真的很想知道为什么我会收到这些警告。

第一个 Pycharm 警告来自第 5 行,“Cannot find reference ‘init’ in ‘__init__.py’ 下一个警告是第 16 行,“在‘__init__.py’中找不到引用‘QUIT’ 第三个也是最后一个警告是第 24 行,“在‘__init__.py’中找不到引用‘quit’

为什么找不到这些引用?怎么了?

我在下面粘贴的代码本身:

#! /usr/bin/python

import pygame

pygame.init()

gameDisplay = pygame.display.set_mode((800, 600))
pygame.display.set_caption('A bit Racey')
clock = pygame.time.Clock()

crashed = False

while not crashed:

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            crashed = True

        print(event)

    pygame.display.update()
    clock.tick(60)

pygame.quit()
quit()

【问题讨论】:

  • 您的代码工作正常,您所做的代码只是制作汽车游戏的几个代码的一部分。它应该显示带有鼠标事件的黑屏。您可以忽略未定义退出时的 pep8 和 pycharm 错误。在后面的步骤中一切都会好起来的。
  • 我认为是这样,但我有点强迫症。我需要找出错误发生的原因,否则它会一直困扰着我。是因为构建 Pygame 库的人没有包含 Pycharm 所期望的东西吗?如果是这样,我可以以某种方式解决这个问题吗?或者是更深层次的问题,比如我安装了错误版本的 Pygame,或者它以某种方式错误安装?或者可能,一切都很好,这是一个 Pycharm 错误。我需要积极地确定是什么导致了这种情况,因为它让我的强迫症发疯了。谢谢。
  • 不,没有错误,只是强迫症。您可以阅读 pep8,但不要过度阅读。在 2015 Pycon Raymond Hettinger - Beyond PEP 8,他谈到人们对修复 pep8 的看法。
  • 别在意我的评论,由于某种原因你的评论被切断了,但我知道我看到了整个句子;)会考虑的。
  • 好的,这是我的主要麻烦,它(IMO)是一个问题:如果 Pycharm 的“在 'init.py' 中找不到引用 X”是一个无用的错误或这实际上是一个有用的错误。让我们假设这是一个无用的错误。这表明我可以通知 Pycharm,它以后再也不会因为这种错误而困扰我,而且这不会引起问题。但如果是这样的话,那为什么 Pycharm 有它呢?很难相信找不到参考资料迟早会变得不重要。但如果它很重要,那么为什么不在此时此地呢?我很困扰。

标签: python pygame pycharm


【解决方案1】:

这将毫无错误地为您工作...导入系统并执行系统退出

#! /usr/bin/python

import pygame
import sys

pygame.init()

gameDisplay = pygame.display.set_mode((800, 600))
pygame.display.set_caption('A bit Racey')
clock = pygame.time.Clock()

crashed = False

while not crashed:

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            crashed = True

        print(event)

    pygame.display.update()
    clock.tick(60)

pygame.quit()
sys.exit()

【讨论】:

  • 谢谢,我刚刚输入了那个,有趣的是,我在相同的三个地方收到了相同的三个警告。诡异的!我不知道为什么它在“__init__.py”中找不到引用
  • 这是一个单独的错误,与退出的事情无关。我认为在 PyCharm 首选项中,您可以为活动的 Python 解释器添加路径并下载 Python“站点包”,它将消失
  • 除非最新版本出现错误。创建一个新项目和新文件而不重构它。
  • 如果没有错误,你可以在 ide 中测试程序,你很好,看起来是他们知道的 unresolved pycharm error
  • 我没有收到复制它以进一步帮助您的警告。但你的代码很好。那是一个pycharm错误。我在 99% 的情况下使用 sublime3 作为编辑器,只有在修复某人的东西或者它确实有效时才使用 pycharm。
猜你喜欢
  • 2018-06-30
  • 2022-01-01
  • 2020-07-19
  • 2015-02-24
  • 2017-10-03
  • 2021-06-04
  • 2022-08-09
  • 2018-07-24
  • 2015-04-14
相关资源
最近更新 更多