作者jimmylin212 (JimmyG)
看板Python
標題[問題] list.pop() 問題
時間Mon Nov 22 09:55:18 2010
想請一個程式片段的錯誤
list = [ [1,a],[1,b],[2,c],[2,d],[3,e],[4,f],[5,g] ]
for i in range(0, len(list)):
if list[i][0] == 1:
list.pop(i)
當我執行這段程式的時候最後結束都會 index out of range
最後大概會有一兩個長度的誤差,就是會讀到空的地方
想請問會出現這種問題是為什麼呢?
另外要怎麼解決呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.118.155.55
推 zerodevil:你在for loop裡把list和i印出來看看就知道了 11/22 10:12
推 curist:那就 list = [x for x in list if x[0]!=1] 11/22 20:48