我需要在另一个函数中获得一个变量,使用Python 3中的OOP范式。
也许我下面写的例子可以更好、更容易地表达我需要做的事情:
class Mother:
def first_def(self):
var = 'Need this!'
def second_def(self):
var = 'Need this!' # Need to pull from first_def to use here.
基本上,我需要从first_def
中拉出var
以用于second_def
。知道怎么做吗?
将var
设置为实例属性。(我不知道你说的"噗"是什么意思。)
class Mother:
def first_def(self):
self.var = "Need this"
def second_def(self):
# Do what you want with self.var
print(self.var)
m = Mother() # m.var not yet set
m.first_def() # sets m.var
m.second_def() # outputs "Need this"
有两种方法:
class Mother:
def first_def(self):
var = 'Need this!'
return var;
def second_def(self):
var = self.first_def()
或者您可以将此变量设置为类变量,稍后再访问它:
class Mother:
def first_def(self):
self.var = "Need this"
def second_def(self):
# Do what you want with self.var
print(self.var)
m = Mother() # m.var not yet set
m.first_def() # sets m.var
m.second_def() # outputs "Need this"