Cześć,
przy testowaniu pętli for i usuwaniu z jej pomocą liczb parzystych z listy napotkałem na problem, który nie bardzo wiem jak rozwiązać.
thislist = [1,2,2,3,4]
for n in thislist:
if n % 2 == 0:
thislist.remove(n)
print(n)
print(thislist)
Wynik:
2
[1, 2, 3, 4]
4
[1, 2, 3]
Problem polega na tym, że usuwa liczby 2 i 4 z pominięciem jednej "dwójki". Natomiast samo działanie pętli for bez usuwania z listy wygląda tak:
thislist = [1,2,2,3,4]
for n in thislist:
if n % 2 == 0:
print(n)
Wynik:
2
2
4