【发布时间】:2015-11-03 20:52:20
【问题描述】:
class player(object):
def __init__(self):
self.health = 100
self.stats = {'STR': 0,
'DEF':0}
class create_character(object):
def choose_class(self):
inp = input("Please choose a class!: ").lower()
s = ("Knight, Archer, or Mage")
print(s)
if inp == 'knight':
self.stats['STR'] = 15
self.stats['DEF'] = 15
print(self.stats)
我目前面临的问题是,当我在 create_character 下引用 self.stats 时,它告诉我特定类没有“self.stats”。如果我尝试 player.self.stats 或 player.stats,它会告诉我同样的事情,即该类没有这些属性。如何从另一个类中引用字典或变量,并更改其属性。此外,当我打印 self.health、self.stats、self.name 或玩家类拥有的任何属性时,它会给我一堆不需要的信息。有没有办法排除多余的信息?
【问题讨论】:
-
那...没有任何意义。为什么
create_character是一个类?为什么您期望它与恰好在其上方定义的完全不相关的类具有相同的属性?为什么您希望类player具有您仅在该类的实例上定义的属性? “一堆不需要的信息”究竟是什么意思?我强烈建议您查找并遵循 Python OOP 教程来掌握基础知识。
标签: python python-3.x