Dieser Code sollte die Summe der geraden Zahlen in den ersten zehn Zahlen der Fibonacci-Folge drucken.Wie ist dieser Listenindex außerhalb des Bereichs? (Fibonacci numbers exercice)
#Creates a list with the first ten Fibonacci numbers.
l = [1,2]
for i in range(10):
l.append(l[i]+l[i+1])
for i in l:
#If an element of the Fibonacci list is uneven, replace it with zero.
if l[i]%2 != 0:
l[i] = 0
#Print the sum of the list with all even Fibonacci numbers.
print sum(l)
Wenn ich dies auszuführen, erhalte ich:
File "pe2m.py", line 6, in <module>
if l[i]%2 != 0:
IndexError: list index out of range
ich nicht, wie seine außerhalb der Reichweite geht, könnte jemand erklären?
Vielen Dank, klare Erklärung! Das Ergebnis war immer noch nicht das, was ich wollte, weil ich Range (10-2) machen musste, wenn ich nur die ersten zehn Nummern wollte. – Bentley4