看板 Python 關於我們 聯絡資訊
我想在用iterator在loop時動態增加list的項目 用途大概是把list中current item 後半split下來 insert到下一項在做處理 可是index()好像只會找到第一個符合的 請問我如何找到 for cur_item in mylist: cur_item 目前的position or index? 另外想問如果 真的insert成功的話iterator會保證 幫我改變正確的loop數目嗎 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.160.181.10
bowans:for idx, cur_item in enumerate(mylist): 可以找目前idx 03/12 23:51
bopomofo:for i in xrange(len(mylist)): 03/12 23:51
bopomofo:放棄,請參考一樓的答案 03/12 23:54
bopomofo:第二個問題寫程式試試看就知道了 03/12 23:57
kdjf:可是用insert的話,會搬動後面的所用item,比較慢喔 03/13 09:28
kdjf:不如自己用個loop處理掉 03/13 09:28
mikapauli:list_iterator在stop iteration前會隨其參照的list改變 03/14 03:00
mikapauli:改變list長度即改變for的loop數(除非在最後一圈縮短list 03/14 03:09
mikapauli:但只有insert的index大於for loop目前index的項會loop到 03/14 03:12
mikapauli:否則會重複loop現在這項一次 03/14 03:20