[問題] 關於對list重複append的問題
各位好
最近工作時需要產生一組list,規則如下
N=0 輸出空list
N=1 輸出[[1]]
N=2 輸出[[0,0], [1,0], [2,0], [0,1], [1,1], [2,1], [0,2], [1,2], [2,2]]
依此類推
以下是我的code(輸出會缺[0,0])
N=2
series = [0] * N
result = []
while sum(series) != N*N:
for i in range(N):
if series[i] < N:
series[i] += 1
break
else:
series[i] = 0
print(series) #此處的輸出都是正確的
result.append(series)
print(result) #每次append都會蓋過前面的元素
結果result裡面的值是
[[2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2], [2, 2]]
第一次遇到這種狀況,我找不到result的值何時被重設,append也不應該蓋過前面的值
請問一下各位高手,我的code錯誤在那邊,感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 112.104.27.82 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1631633391.A.342.html
推
09/14 23:52,
3年前
, 1F
09/14 23:52, 1F
推
09/14 23:54,
3年前
, 2F
09/14 23:54, 2F
推
09/14 23:56,
3年前
, 3F
09/14 23:56, 3F
→
09/14 23:56,
3年前
, 4F
09/14 23:56, 4F
→
09/14 23:57,
3年前
, 5F
09/14 23:57, 5F
→
09/14 23:58,
3年前
, 6F
09/14 23:58, 6F
感謝各位,現在才知道原來list是指標,等於我每次append都新增同一組值
推
09/15 00:21,
3年前
, 7F
09/15 00:21, 7F
※ 編輯: kanako (112.104.27.82 臺灣), 09/15/2021 00:32:22
推
09/15 07:34,
3年前
, 8F
09/15 07:34, 8F
推
09/16 08:41,
3年前
, 9F
09/16 08:41, 9F
推
09/17 22:07,
3年前
, 10F
09/17 22:07, 10F
→
09/17 22:07,
3年前
, 11F
09/17 22:07, 11F
→
09/17 22:08,
3年前
, 12F
09/17 22:08, 12F
推
09/17 22:10,
3年前
, 13F
09/17 22:10, 13F
Python 近期熱門文章
PTT數位生活區 即時熱門文章