Python говорит, что pygames не имеет атрибута init (), но lib установлена ​​правильно - PullRequest
1 голос
/ 11 мая 2011

Я использую Python 2.7 с pygame-1.9.2pre.win32-py2.7.‌exe из http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame

Я запустил этот скрипт:

import pygame
print 'PyGame Version: %s ' % pygame.__version__

, чтобы проверить, правильно ли установлен мой модульполучил:

PyGame Version: 1.9.2pre 

Насколько я знаю, это означает, что Pygame работает правильно.В Python IDLE я пытаюсь работать в интерактивном режиме:

import pygame 
pygame.init()

# Set the height and width of the screen
size=[700,500]
screen=pygame.display.set_mode(size)
pygame.display.set_caption("My Game")

И все работает отлично.Но всякий раз, когда я пытаюсь запустить это как скрипт, я получаю:

Traceback (most recent call last):
  File "D:\Computing\Workspaces\Python\test\pygame.py", line 5, in <module>
    import pygame
  File "D:\Computing\Workspaces\Python\test\pygame.py", line 13, in <module>
    pygame.init()
AttributeError: 'module' object has no attribute 'init'

В Eclipse или Запуск в IDLE либо.Что это может быть?

Ответы [ 2 ]

6 голосов
/ 11 мая 2011

Если ваш скрипт называется pygame.py, Python импортирует его вместо действительного пакета pygame (когда вы делаете import pygame). Это может объяснить вашу ошибку.

0 голосов
/ 01 марта 2012

когда вы назвали свой скрипт pygame.py и попытались его запустить, python создал имя файла "pygame.pyc" (= скомпилированный файл python) и поместил его в каталог, в котором вы сохранили ваш скрипт pygame.py.

Вы должны удалить вновь созданный файл .pyc и переименовать ваш скрипт в нечто вроде my_py_game.py вместо pygame.py

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...