Helmut Jarausch <jarausch at skynet.be> writes: > def del_by_key(L,key) : > for pos, (k,d) in enumerate(L): > if k == key : > del L[pos] > break This looks very dangerous, mutating L while iterating over it.