在for循环中修改列表类型属性

时间:2019-02-05 09:58:44

标签: python list loops attributes

基本上,我要遍历一堆具有列表类型属性的对象,同时尝试(通过附加)修改每个对象的属性。有人可以解释为什么这样做会如此,以及解决方法是什么?

class A:
    def __init__(self,lst=[]):
        self.lst = lst

As = []        
for i in range(4):
    As.append(A())

for a in As:
    a.lst.append(1)
    print(a.lst)

所需的输出将是:

[1]

[1]

[1]

[1]

实际输出为:

[1]

[1,1]

[1,1,1]

[1,1,1,1]

0 个答案:

没有答案