2
我想使用属性来获取类变量的值,但以下代码导致错误“无法设置属性”错误并删除行self.var3 = var3导致无限递归。我想我对财产的理解很差,请有人指出这里出了什么问题。无法设置属性和无限递归
class Parent(object):
def __init__ (self, var1=None, var2=None):
self.var1=var1
self.var2=var2
class Child(Parent):
def __init__(self, var1, var2, var3):
super(Child, self).__init__(var1=var1, var2=var2)
self.var3=var3
@property
def var3(self):
return self.var3
c1 = Child(6, 7, 8)
c2 = Child(1, 2, 3)
print c1.var1, c1.var2, c1.var3
print c2.var1, c2.var2, c2.var3
无限递归,因为'回报self.var3'访问属性('var3')再次 - 使用不同的成员变量。 – user2864740