我想知道是否有一种简单的方法来全球化python类中的变量。我正在尝试下面的示例,但得到以下错误消息:
UnboundLocalError:赋值前引用的局部变量'gold‘
我不想在每个函数中都输入“全球黄金”。
gold = 10
class economy:
global gold
def income(self):
gold+=5
def expense(self):
gold-=5发布于 2018-09-02 02:53:51
最好把gold放在类中,并从实例引用
class economy:
def __init__(self, gold):
self.gold = gold
def income(self):
self.gold+=5
def expense(self):
self.gold-=5
a = economy(90)
a.income()
a.gold # 95
a.expense()
a.gold # 90发布于 2018-09-02 02:53:20
类中最易访问的变量是一个属性,要在类外部使用它,可以创建一个getVariable函数,如下所示:
gold = 10
class economy:
gold = None
def __init__(self,gold) :
self.gold = gold
def income(self):
self.gold+=5
def expense(self):
self.gold-=5
def getGold(self) :
return self.gold
# to get the gold value from the object :
gold = economy(gold).getGold() https://stackoverflow.com/questions/52131147
复制相似问题