print player.stats()
是元凶。 player.stats() == None
您只需要:
player.stats()
您最好为函数命名player.printStats()
。
另一种选择是使其返回字符串:
def stats(self):
return '\n'.join([
self.name
"Strength : %d" % self.strength,
"Dexterity : %d" % self.dexterity,
"Hit Points: %d" % self.hit_points,
"Aura : %d" % self.aura,
"Weapon : %s" % self.weapon,
"Spell : %s" % self.spell,
"Item : %s" % self.item,
"Element : %s" % self.element,
"-" * 20
])
然后print player.stats()
会表现出预期