我正在(尝试)用python2.7.12在Pygame中重新创建mariolevel1-1。以下是两个相关文件:
在主.py: http://pastebin.com/HXmBdJ2a
在马里奥.py:
http://pastebin.com/29xu1tMM
我的问题是:当我跑的时候主.py,解释器给我这个错误消息:
Traceback (most recent call last):
File "C:/path/to/main.py", line 6, in <module>
import mario
File "C:\path\to\mario.py", line 7, in <module>
import main
File "C:\path\to\main.py", line 47, in <module>
game = Game()
File "C:\path\to\main.py", line 26, in __init__
self.main_loop()
File "C:\path\to\main.py", line 39, in main_loop
self.Mario = mario.Mario()
AttributeError: 'module' object has no attribute 'Mario'
Process finished with exit code 1
我很困惑马里奥.py班上的马里奥。如果我想逃跑马里奥.py,我得到这个错误:
有人能给我解释一下吗?
编辑:我通过添加:import sys
sys.path.insert(0, "scripts")
来修复它
在
import mario
本例中的
AttributeError: 'module' object has no attribute 'Mario'
来自这样一个事实,即Game
类没有一个名为Mario
的属性,因为您没有在游戏类的init中定义它。要说清楚,您没有:要么你在游戏类的
^{pr2}$self.Mario = mario.Mario()
中有__init__
,要么只调用你拥有的代码中的Mario = mario.Mario()
。这意味着保留已有的代码应该:
旁注:为什么在您的马里奥·皮伊?试着把它去掉。}。在
如果不使用
main.py
中定义的任何方法或类,则可以删除mario.py
中的{相关问题 更多 >
编程相关推荐