Sono nuovo di Python e sto sperimentando con gli elenchi Sto usando Python 3.2.3 (predefinito, 19 ottobre 2012, 20: 13:42), [GCC 4.6.3] sul linux2Perché un ciclo for con il metodo pop (o del statement) non itera su tutti gli elementi di lista
Ecco il mio SampleCode
>>> l=[1,2,3,4,5,6]
>>> for i in l:
... l.pop(0)
... print(l)
...
mi aspetterei che il seguente output
1
[2, 3, 4, 5, 6]
2
[3, 4, 5, 6]
3
[4, 5, 6]
4
[5, 6]
5
[6]
6
[]
Invece sto ottenendo questo
1
[2, 3, 4, 5, 6]
2
[3, 4, 5, 6]
3
[4, 5, 6]
Il ciclo loop si interrompe dopo 3 giri. Qualcuno può spiegare perché?
possibile duplicato di [Modifica elenco durante l'iterazione] (http://stackoverflow.com/questions/1637807/modifying-list-while-iterating) –
@NedBatchelder: Mentre la causa principale è la stessa, la domanda è sostanzialmente diversa . Il motivo per cui si chiama 'pop' non è lo stesso (il collegamento sta tentando di saltare, questo non lo è). – Guvante