В качестве эксперимента я сделал это:
letters=['a','b','c','d','e','f','g','h','i','j','k','l']
for i in letters:
letters.remove(i)
print letters
Последняя печать показывает, что не все элементы были удалены? (каждый другой был).
IDLE 2.6.2
>>> ================================ RESTART ================================
>>>
['b', 'd', 'f', 'h', 'j', 'l']
>>>
Какое объяснение этому? Как это можно было бы переписать для удаления каждого элемента?