编译错误。AttributeError: 'module'对象没有'init'属性

11 投票
3 回答
32951 浏览
提问于 2025-04-16 06:22

这是我写的一个小程序,

import pygame
pygame.init()

这是我用来编译的命令。

python myprogram.py

出现了编译错误,

  File "game.py", line 1, in 
    import pygame
  File "/home/ubuntu/Documents/pygame.py", line 2, in 
    pygame.init()
AttributeError: 'module' object has no attribute 'init'

我在我的Ubuntu系统上安装了pygame,它安装在

/usr/lib/python2.6/dist-packages/pygame

我发现从IDLE(一个Python的开发环境)中,如果我执行这两个语句,它运行得很好。

3 个回答

-2

把文件名pygame.py改成另一个名字,比如叫another_name_as_pygame.py,这样你就得到了新的代码:

import pygame
from pygame.locals import *
pygame.init()
0
  1. 这是我的编译命令:python myprogram.py 但是你在 File "game.py", line 1, in 这里遇到了错误 oO

  2. 我也遇到过同样的问题,后来通过重命名主 .py 文件解决了。这个文件不能和模块同名,比如 pygame

16

请删除你文档文件夹里的“pygame.py”文件,因为这个文件会遮盖你安装的真正的pygame。

看起来你最开始把你的小测试程序保存为“pygame.py”,然后又把它改名为“game.py”。

撰写回答