如何将一个类变量引用到另一个类进行操作?

我有两个类,一个“Items”类和一个“Player”类。


玩家拥有“健康”和“法力”

物品类需要改变玩家的生命值或法力值(取决于它的定义方式),同时保留自己的数据。

基本上,我想在项目类中创建一个方法来激活项目以改变玩家的健康状况。


我希望我的代码做什么,但不知道如何:


class player:

    def __init__(self,health,mana):

        self.health = health

        self.mana = mana


class item:

    def __init__(self,classToEffect, EffectVariable, EffectAmount ):

        self.classToEffect = player

        self.EffectVariable = EffectVariable

        self.EffectAmount = EffectAmount


    def use(self):

        self.classToEffect.__dict__[self.EffectVariable] += EffectAmount


p1 = player(100,100)

i1 = item(p1,'health',10)


print(p1.health) # Should Print 100

i1.use() # Should increase p1.health by 10

print(p1.health) # Should print 110

运行此程序时,我收到“健康”的 KeyError。


梦里花落0921
浏览 164回答 1
1回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python