这是我计划用于我的游戏的代码,但它提示 MRO 错误:
class Player:
pass
class Enemy(Player):
pass
class GameObject(Player, Enemy):
pass
g = GameObject()
最佳答案
您的 GameObject
继承自 Player
和 Enemy
。因为 Enemy
已经 继承自 Player
Python 现在无法确定首先查找方法的类; Player
,或在 Enemy
上,这将覆盖 Player
中定义的内容。
你不需要在这里命名Enemy
的所有基类;只从那个类继承:
class GameObject(Enemy):
pass
Enemy
已经包含了Player
,不需要再包含了。
关于python - TypeError:无法创建一致的方法解析顺序(MRO),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29214888/