[Python] Strano comportamento di list
Eriol
eriol a mornie.org
Lun 13 Ott 2008 16:01:00 CEST
On Monday 13 October 2008 15:44:39 michele a nectarine.it wrote:
> Come vedete (1, 5, 38473) è rimasto, e non capisco perché.
Perché il for-in mantiene un indice interno incrementato ad ogni ciclo: se
modifichi la lista su cui stai iterando ovviamente l'indice del ciclo e quello
della lista, non coincidono più e per questo rilevi quel comportamento
anomalo.
Come soluzione puoi iterare su una copia della lista:
>>> for k in list(L): # La copia puoi farla anche con L[:] ma è meno esplicito
... if k[0] == 1: L.remove(k)
HTH,
--
Eriol - *p = NULL; - EIBTI
GPG Key ID 0B7C8A19
http://mornie.org
Maggiori informazioni sulla lista
Python