7
我遇到了我的程序中的問題,我不知道我在做什麼錯。要開始,我創建了一個空列表。例如:蟒蛇將值附加到子列表
>>> Lists = [[]]*12
這給:
>>> Lists
[[], [], [], [], [], [], [], [], [], [], [], []]
然而,試圖將值追加到一個單獨的子表時,增加了價值給所有的子表。例如:
>>> Lists[2].append(1)
給出:
>>> Lists
[[1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1], [1]]
有沒有辦法將追加到只是一個單一的子列表,這樣的結果會是這樣的:
>>> Lists
[[], [], [1], [], [], [], [], [], [], [], [], []]
你可能想看看[這](http://www.laurentluce.com/posts/python-list-implementation/)理解爲什麼它追加到所有的子表。如果你看第二個數字,你可以將列表中的12個元素看作指向同一個對象'[]'。現在,當你向'Lists [2]'追加'1'時,它會附加到共享列表對象。因此,'Lists'中的所有元素似乎都附加了1。 – Nik