Pygame错误:' pygame'没有属性' init'

时间:2015-12-17 20:45:38

标签: python pygame

我刚下载了Pygame但遇到了错误:AttributeError:module' pygame'没有属性' init'。我正在环顾stackoverflow,有人通过重命名文件来解决错误(我不知道该怎么做)。目录如下

Python - > Lib - > site-packages - > pygame

令我困惑的部分是在pygame文件夹

pygame > Include, Lib
   Include > pygame > (many hh files)
   Lib > SitePackages > pygame > init (I know that it has the attribute init)

因为有' 3' pygame文件夹,这会导致我的程序错误吗?

import pygame, sys
pygame.init()
DISPLAYSURF = pygame.display.set_mode((400, 300))
pygame.display.set_caption('Hello World!')
while True: # main game loop
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
    pygame.display.update()

11 个答案:

答案 0 :(得分:2)

看起来好像已经“下载”了pygame的源代码发布,然后将内容复制到site-packages。适用于大多数纯python库,但不适用于具有c扩展名的库,例如pygame。使用安装程序可能是最好的服务,因为pygame从源代码构建起来有点乏味。

访问http://www.pygame.org/download.shtml并为您的操作系统选择安装程序。请注意,前两个链接是下载,而不是您需要的。

答案 1 :(得分:1)

安装pygame的最新,最佳方法可在以下网址获得:https://www.pygame.org/wiki/GettingStarted

目前,对于Windows,它说要在cmd窗口中安装它: py -m pip install pygame --user

答案 2 :(得分:0)

许多Windows用户难以安装Python,正确获取路径变量,然后添加其他模块。我找到的一个方便的解决方案是使用可以放在USB(或桌面)上的便携式版本,并可以轻松地在任何地方运行。

下载并安装:Portable Python Pack

安装到USB或桌面

从已安装的文件夹中,打开PyScripter(或其他,如果您愿意)

打开并运行PyGame或其他Python代码。

注意:这是Python 2.7,但它有PyGame和一系列其他模块包装在下载之前检查出来并尝试,以满足您的需求!

答案 3 :(得分:0)

您必须安装pygame。如果您这样做了,请尝试使用pip。在终端或命令行中,输入pip install pygame,如果不起作用,请执行python -m pip install pygame,如果不起作用,请执行py -m pip install pygame

答案 4 :(得分:0)

这是一个普遍的错误,如果您正在像“ VSC”或“ pycharm”之类的IDE上运行代码,到现在仍无法解决。您将收到此错误。

请确保您已使用pip正确安装了pygame,并尝试使用Git Bash(通过键入“ python“ filename.py”“不带引号)或python的解释器运行代码。

您还可以在www.pygame.org

上查找信息。

答案 5 :(得分:0)

只需将文件从pygame.py重命名为myTestGame.py,例如,因为在使用import pygame时要导入同一文件

答案 6 :(得分:0)

首先uninstall您的IDE

2 reinstall IDE在另一个文件夹中

3转到IDE terminal and install Pygame using pip version 19.0.3

4然后您的问题就解决了

答案 7 :(得分:0)

我建议大家使用此代码

import pygame, sys
from pygame.locals import *

screen = pygame.display.set_mode((600,600))
pygame.display.set_caption("Pygame Title")

def close():
    sys.exit()
    pygame.quit()

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

答案 8 :(得分:0)

问题很简单,您不能使用模块名称(pygame)作为文件名(pygame.py)。只需将其更改为其他内容,一切都会正常工作

答案 9 :(得分:0)

问题很可能是您文件的名称为“ pygame.py”,因此python会导入您的文件,而不是实际导入实际的模块。只需将python文件重命名为其他名称即可。

答案 10 :(得分:0)

正如 Mohamed Moawia 所说,我们需要重命名文件,因为我们在使用 import 时导入了同一个文件,并且似乎产生了冲突,当我重命名文件时,问题解决了,我在这里添加了一张图片以显示错误,您可以看到不同的名称文件。enter image description here