如果我有将1个列表追加到另一个列表中的代码:
nlis = [2, 4, 6, 8]
k = []
k.append(nlis)
print(k)
for i in range(4):
nlis[i] += 1
k.append(nlis)
print(k)
由于某些原因,输出:
[[2, 4, 6, 8]]
[[3, 5, 7, 9], [3, 5, 7, 9]]
[2, 4, 6, 8]
变成[3, 5, 7, 8]
。
如何使它输出:
[2, 4, 6, 8]
[[2, 4, 6, 8], [3, 5, 7, 9]]
答案 0 :(得分:1)
尝试一下:
nlis = [2, 4, 6, 8]
nlis2=[]
nlis2.extend(nlis)
k = []
k.append(nlis2)
k.append(nlis)
print(k[0])
for i in range(4):
nlis[i] += 1
print(k)
输出:
[2, 4, 6, 8]
[[2, 4, 6, 8], [3, 5, 7, 9]]
或者:
nlis = [2, 4, 6, 8]
k = []
k.append(nlis)
print(k[0])
nlis2=nlis[:]
for i in range(4):
nlis2[i] += 1
k.append(nlis2)
print(k)
答案 1 :(得分:0)
.append()
将添加的内容作为单个值添加到列表中。而是使用.extend()
。与k.append(nlis)
中一样。