作者DJYOSHITAKA (franchouchouISBEST)
標題[閒聊] python大師請進
時間2024-05-16 23:24:44
我想init一個mxn的2D list,然後每個element又是一個空的list
我這樣寫(假設m=n=3)
a = [[[]]*3 for _ in range(3)]
print(a)
a[0][0].append(1)
print(a)
然後
[[[], [], []], [[], [], []], [[], [], []]]
[[[1], [1], [1]], [[], [], []], [[], [], []]]
???
我想要的是
[[[1], [], []], [[], [], []], [[], [], []]]
我哪裡寫錯了嗎==
聖我不會py了 加入不了py邦
--
※ 發信站: 批踢踢實業坊(ptt-website.tw), 來自: 114.137.230.241 (臺灣)
※ 文章網址: https://ptt-website.tw/Marginalman/M.1715873087.A.BF4
推 szymwf: 壓類壓類 05/16 23:27
推 Smallsh: 因為你寫[[]]*3阿 05/16 23:27
推 CP3isgood: a = [[[] for _ in range(n)] for _ in range(m)] 05/16 23:27
→ DJYOSHITAKA: 太難了吧 05/16 23:28
→ Smallsh: 然後為啥你要2D的list of lists 寫comprehension 05/16 23:29
推 FireStation: 包養真心珍惜友誼情感。 05/16 23:29 → ZooseWu: 結果是你存三次相同的物件,但我不知道為什麼 05/16 23:29
→ ZooseWu: 所以你改那個物件就感覺結果被複製三次 05/16 23:29
→ Smallsh: 喔沒事 看到了 05/16 23:29
→ DJYOSHITAKA: 好吧 我誤會*的意思了 05/16 23:29
推 wu10200512: 爛py不如c++ 05/16 23:33
推 Thobel: 包養網認識來自世界各地的朋友。 05/16 23:33