我试图通过python方法访问更新的初始化变量到同一个类中的另一个python方法。下面是我的示例代码块。
class test(object):
def __init__(self):
self.a = []
def test1(self):
self.a = [1,2,3,4,5]
print ("Output of test1 #", self.a)
def test2(self):
print ("Output of test2 #",self.a)
test().test1()
test().test2()
Output # Output of test1 # [1, 2, 3, 4, 5]
Output of test2 # []
我的理解是,如果我在__ init __(self)部分中初始化变量,那么我可以从类中的方法更新相同的变量,并从同一个类的另一个方法访问相同的变量。如果我的理解是错误的,请纠正我。
答案 0 :(得分:4)
而不是module
,您想要的单词是method
。
您的理解是正确的,但仅适用于同一个实例 - 而您正在创建两个实例:
test().test1()
# ^- just created a new instance of test
test().test2()
# ^- just created another, different instance of test
你想要的是什么:
test_instance = test()
test_instance.test1()
test_instance.test2()
答案 1 :(得分:0)
由于test()。test1()和test()。test2()是两个不同的对象。我想您应该阅读有关Python OPP的更多信息:https://docs.python.org/2/tutorial/classes.html