Python:如何通过另一个类或变量的属性引用类的属性?

时间:2016-09-28 02:51:44

标签: python attributes

我正在尝试在基于文本的RPG中创建一个魔术系统,该系统使用魔法类中的属性引用怪物类的属性。 怪物类看起来像

class monster(object):
    def __init__(self, **kwargs):
        self.__dict__.update(kwargs)

将以

格式存储的怪物列表
bestiary = { 
99999: monster(name="Slime", currentHP= 3, maxHP= 10, initiativeMod= 1, AC= 0, baseAttack= 0, equippedWeapon= itemsList[13], speed = 10) ##Syntax items 
}

法术以

的形式创建
class BuffSpell(object):
def __init__(self, **kwargs):
    self.__dict__.update(kwargs)

表格中每个咒语的实例

bardSpells = {
    2: BuffSpell(name= "Flare", level= 0, stat= "baseAttack", value = -1, MP = 3, spellType = "buff"),
}

我正在尝试引用怪物中的属性,该属性由像

这样的法术中的属性给出
def useMagic(target, spell):
if spell.spellType == "buff":
    x = spell.stat
    target.x += spell.value

当然不起作用。如何获取spell.stat属性并将spell.value应用于monster中的相应属性?

1 个答案:

答案 0 :(得分:1)

您可以尝试以下内容:

{{1}}