我上课的结构是这样的:加入字段的值
class A(object):
array = [1]
def __init__(self):
pass
class B(A):
array = [2, 3]
def __init__(self):
super(B, self).__init__()
class C(B):
array = [4]
def __init__(self):
super(C, self).__init__()
print array
当我做:
c = C()
我希望它加入他们在继承顺序排列的所有领域。并打印[1,2,3,4]。我怎样才能做到这一点?
有这样或不在类构造器中写入一些东西,它会为所有的子元素加入'array'。 – bobby
这不是一个好的解决方案,因为它会修改'array'的基类的值,而不仅仅是为子类创建联合版本。在你实例化'C'之后,'A.array'也将等于'[1,2,3,4]'。另外,如果你实例化'C'两次,'A.array'将变成'[1,2,3,4,4]',等等。 – BrenBarn