wolno zmieniać pojemnik jesteś na pętli, bo iteratory w kontenerze nie będą informowane o swoich zmian i, jak zauważyłeś, to całkiem prawdopodobne, aby produkować zupełnie inną pętlę i/lub niepoprawny. W normalnych przypadkach pomocne jest zapętlenie kopii pojemnika, ale w twoim przypadku jest oczywiste, że nie musisz tego robić, ponieważ pojemnik będzie pusty po 50 odnogach pętli, a jeśli spróbujesz ponownie wystrzelić, " Otrzymam wyjątek.
Cokolwiek jest JEDNAK Czy jasne jest, jakie zachowanie próbujesz osiągnąć, jeśli w ogóle ?! Może potrafisz wyrazić swoje pragnienia za pomocą while
...?
i = 0
while i < len(some_list):
print i,
print some_list.pop(0),
print some_list.pop(0)
Nie ma sposobu, aby powiedzieć, co masz nadzieję osiągnąć, patrząc na swój kod. –
"różni się od oczekiwanego". Naprawdę? Czego oczekiwałeś? –