各位好
我是python新手,原本是寫C為主
最近在嘗試python,有些問題想請教各位
我設定了一個List
想用for去做篩選,篩選出來我就把它放到另一個List中
目前的架構大概是這樣 (簡化版本)
A = [1,2,3,4,5]
B = []
for i in range(len(A)):
if A[i] % 2 ==0
B.append(A[i])
A.remove(A[i])
但是我發現篩選到最後 一定會出現
IndexError: list index out of range
我猜想這部分應該是因為我移除了List元素後,
A的長度縮減,原本A[5]可能變成A[4],而i繼續遞增,導致檢查不到
我嘗試找相關的解法,但是抓不到關鍵字
拜託各位指教了,非常感謝
新增問題
請問若以iterator的方式
要怎麼做雙重迴圈以上的篩選呢
一般使用C的時候 因為是用陣列位置,所以就是用i , i+1就可以了
難道python可以直接抽一組出來?
例如我要把上面 A的元素 相加為6的元素組起來放到B裡面
直覺我是用
for i ...
for j=i+1 ...
一一去比對
可是照下面O大的方法,直接提取元素應該是不能這樣+1的吧?
謝謝各位不吝指教 (鞠躬