[問題] 關於for...in...的一個BUG
各位先進,敝人一直為此簡單問題所困擾,願得高手解惑。
程式如下:
node_comb = [(1, 2), (1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5), (3, 4),
(3, 5), (4, 5)]
for nd in node_comb:
if 1 in nd:
node_comb.remove(nd)
print(node_comb)
不管怎麼跑,出來的結果就是不對:
[(1, 3), (1, 5), (2, 3), (2, 4), (2, 5), (3, 4), (3, 5), (4, 5)]
(1, 3) 和 (1, 5) 不該在輸出中!
如果把 tuple 改成 list 結果仍錯,百思不得其解,好像是找到一個符合
條件的tuple就自動跳過下一個,是這樣嗎?
--
<)".."(>
( (..) )
im a pig
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.167.6.243 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Python/M.1566790998.A.BDB.html
推
08/26 11:46,
4年前
, 1F
08/26 11:46, 1F
→
08/26 11:47,
4年前
, 2F
08/26 11:47, 2F
→
08/26 11:47,
4年前
, 3F
08/26 11:47, 3F
明白了,謝謝您!
推
08/26 11:48,
4年前
, 4F
08/26 11:48, 4F
感謝大大,可以正常運作了
推
08/26 12:02,
4年前
, 5F
08/26 12:02, 5F
推
08/26 12:03,
4年前
, 6F
08/26 12:03, 6F
→
08/26 12:03,
4年前
, 7F
08/26 12:03, 7F
推
08/26 12:05,
4年前
, 8F
08/26 12:05, 8F
→
08/26 12:05,
4年前
, 9F
08/26 12:05, 9F
感恩!
※ 編輯: tang1019 (118.167.6.243 臺灣), 08/26/2019 12:12:55
※ 編輯: tang1019 (118.167.6.243 臺灣), 08/26/2019 12:16:19
推
08/26 12:21,
4年前
, 10F
08/26 12:21, 10F
推
09/21 23:22,
4年前
, 11F
09/21 23:22, 11F