我会努力工作,提高测试技能。
安装pygame后运行引起的'module' object has no attribute 'init'
上一篇 /
下一篇 2014-03-25 13:42:54
/ 个人分类:python学习
今天学习pygame,安装pygame后,敲入书上第一个实例
源码:
import pygame
pygame.init()
screen = pygame.display.set_mode([640,480])
并保存为pygame.py文件
运行:
提示'module' object has no attribute 'init'
查问题:
第一步:先确定pygame是否安装成功。
import pygame
print pygame.ver
确定安装的pygame版本,此时能显示,表示pygame安装成功。
第二步:安装路径中文件是否缺失:
找到 PYTHON-SITEROOT\Lib\site-packages\pygame\ 这个目录(PYTHON-SITEROOT是
python的安装目录)看下面有没有除
__init__.py之外的文件,然后寻找一个叫base.pyd的文件,因为,你在做了import pygame的时候其实是导入的这个文件,你调用pygame.init()也是调用的pygame.base.init(),如果这个文件不存在,那肯定会
AttributeError: 'module' object has no attribute 'init'的
如果没问题,去查看下tests\base_test.py 有没有这方法:
def __PYGAMEinit__(): #called automatically by pygame.init()
如果没有,证明你的pygame装错了。
经证明均正确。
第三步:
源码改为:import pygame
F5运行
在shell中敲入命令print pygame
显示
>>> print pygame
<module 'pygame' from 'C:\Python27\learn\pygame.pyc'>
>>>
说明导入的pygame路径在'C:\Python27\learn\pygame.pyc‘。
此时发现与第二步pygame的安装路径不一致,正确的路径应该是:
<module 'pygame' from 'C:\Python27\lib\site-packages\pygame\__init__.pyc'>
说明pygame引入路径不正确,查找learn下存在pygame.pyc与lib下的pygame重名,需要修改这个文件的名字。
修改保存文件的名字,此时运行ok。问题解决。
收藏
举报
TAG: