在 Python 中创建类对象属性后,如何更改它们?



我正在尝试创建对象属性,这些属性稍后可以根据用户输入进行修改

它的要点是,我正在尝试制作一个基于文本的RPG与统计。我把玩家变成了一个类对象,其属性包括"HP"、"AC"、"Strength"等等。

游戏的核心部分是统计数据能够相互作用。例如,玩家的"AC"是通过添加10和他们的"Dex"修饰符来计算的

我想让玩家选择他们的"Dex",所以我需要能够相应地修改对象属性

然而,Python似乎不认识我在其中所做的数学运算

class Test:
def __init__(self):
self.x = 1
self.y = 2
self.z = self.x + self.y
test = Test()
test.y = 7
print(str(test.z))

打印给我的是3

我怎样才能让它给我"8"?

如果您想在访问时计算属性值,这是@property装饰器的任务,请考虑以下示例:

class Player:
def __init__(self):
self.x = 1
self.y = 2
@property
def z(self):
return self.x + self.y
player1 = Player()
player1.y = 7
print(player1.z)

输出:

8

如果你想了解更多关于python中装饰器的信息,我建议你阅读关于python装饰器的realpython Primer。

相关内容

  • 没有找到相关文章

最新更新