[問題] list initialize

看板Python作者 (Arim5566)時間12年前 (2013/07/23 18:15), 編輯推噓0(005)
留言5則, 2人參與, 最新討論串1/1
各位版友好 以下是我的程式碼 a=list([[]])*10 [[],[]...] 但是a裏面每一個[]都指向同一個記憶體位置,所以像我用a[0].append(1)的話 會變成 [[1],[1],[1]...[1]] 但是我想要的是 [[1],[],[]...[]] 請問我可以怎麼做? 謝謝各位了 -- ~宅男的四個徵兆~ ∠□ ○ ! * \○/ ★    (○ ? ╦╦└□ " ○□═ □   □> ║║√√ ╦══╦ ∥    |\ 一回家就上PTT 每天想正妹 以當好人為樂 忘記正妹虧欠自己 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.117.169.131

07/23 18:20, , 1F
a = [[] for _ in range(10)]
07/23 18:20, 1F
哇,第一次看到這種寫法,請問底線_是表示? ※ 編輯: Arim 來自: 140.117.169.131 (07/23 19:55)

07/23 21:51, , 2F
欸.. 那只是一個變數而已,你可以換成自己喜歡的名字 XD
07/23 21:51, 2F

07/23 23:35, , 3F
不過事實上_是上個statement所回傳的非None值
07/23 23:35, 3F

07/24 00:10, , 4F
yes, 不過那只僅於 shell 下
07/24 00:10, 4F

07/24 00:10, , 5F
這邊只是拿來表示一個不重要的變數而已
07/24 00:10, 5F
文章代碼(AID): #1HxbVFGS (Python)
文章代碼(AID): #1HxbVFGS (Python)