2016-06-11 59 views

回答

0

名單由引用傳遞在Python中使用。因此,當您將sr附加到kaju時,您只是將另一個引用附加到同一個列表。因此,您的打印語句反映了每次迭代對sr的更改,但該kaju只包含對同一列表的一堆引用。

如果你想的kaju的元素,以反映在每次迭代的變化,你必須在每個迭代,這是可以做到複製sr的價值內置list()功能

for p in range(len(sr)): 
    sr[p] -= thre 
    kaju.append(list(sr)) 
    print sr 

print kaju 

輸出

[11, 13, 4] 
[11, 12, 4] 
[11, 12, 3] 
[[11, 13, 4], [11, 12, 4], [11, 12, 3]] 
0

因爲你每次調用時追加附加在sr整個列表。您可能只想追加sr[p]

相關問題