Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:;嵌套列表分配无法正常工作_Python_List_Variable Assignment - Fatal编程技术网

Python:;嵌套列表分配无法正常工作

Python:;嵌套列表分配无法正常工作,python,list,variable-assignment,Python,List,Variable Assignment,Python的Thr版本是2.6.6 n = 0 list1=["","",""] list2=[] for ... : # a b c changes every loop list1[0]=a list1[1]=b list1[2]=c list2[n].append(list1) n += 1 for j in range(n): print list2[j] 问题是列表2中的每一项都是最后一个循环的值,为什么? 它似乎是

Python的Thr版本是2.6.6

n = 0
list1=["","",""]
list2=[]
for ...    :
    # a b c changes every loop
    list1[0]=a
    list1[1]=b
    list1[2]=c
    list2[n].append(list1)
    n += 1

for j in range(n):
    print list2[j] 
问题是列表2中的每一项都是最后一个循环的值,为什么? 它似乎是由浅拷贝引起的,但我不知道如何修复它。

您需要附加一份
列表1的拷贝:

list2.append(list1[:])
否则,附加的是对同一个列表的引用。

您需要附加一份
list1

list2.append(list1[:])
否则,附加的是对同一个列表的引用。

您需要附加一份
list1

list2.append(list1[:])
否则,附加的是对同一个列表的引用。

您需要附加一份
list1

list2.append(list1[:])
否则,附加的是对同一个列表的引用。

是否
list2[n]。附加([a,b,c])
对您有效?是否
list2[n]。附加([a,b,c])
对您有效?是否
list2[n])
对您有效?是否
list2[n]。附加([a,b,c])
对您有效?