我試圖創建一個保存這個確切的格式列表:[[2],[2],[2],[2],[2],[2],[2],[2],[2],[2]]
如何使用所有相同的值創建2d列表,但可以更改多個元素? (蟒蛇)
當list[3][0] = 9
被調用時,列表變得[[2],[9],[2],[9],[2],[9],[2],[9],[2],[9]]
如何在第一時間將創建列表讓我只用一行來改變這些元素?
我試圖創建一個保存這個確切的格式列表:[[2],[2],[2],[2],[2],[2],[2],[2],[2],[2]]
如何使用所有相同的值創建2d列表,但可以更改多個元素? (蟒蛇)
當list[3][0] = 9
被調用時,列表變得[[2],[9],[2],[9],[2],[9],[2],[9],[2],[9]]
如何在第一時間將創建列表讓我只用一行來改變這些元素?
請檢查輸出,它應該給
[[2], [2], [2], [9], [2], [2], [2], [2], [2], [2]]
作爲輸出。
編輯我的原始問題關於那個,我的意思是說列表[3] [0] = 9 – Epsilonian
>>> L = [[2], [2]] * 5
>>> L
[[2], [2], [2], [2], [2], [2], [2], [2], [2], [2]]
>>> L[3][0] = 9
>>> L
[[2], [9], [2], [9], [2], [9], [2], [9], [2], [9]]
這是因爲相同的兩列被一遍又一遍地重複
>>> [id(x) for x in L]
[140053788793352, 140053788793288, 140053788793352, 140053788793288, 140053788793352, 140053788793288, 140053788793352, 140053788793288, 140053788793352, 140053788793288]
啊,我明白了!這個問題現在非常有意義,謝謝約翰! – Epsilonian
究竟什麼是你想用列表做[3] [0] = [0]? – warl0ck
創建二維列表d = [[2] for x in xrange(n)]'其中n是要創建的列表項的長度 – warl0ck
我想說的是list [3] [0] = 9,我的錯。編輯。 @ warl0ck – Epsilonian