Heim > Artikel > Backend-Entwicklung > Warum wirft „ar[i]“ einen IndexError in einer „for i in ar“-Schleife aus?
In Python beim Codieren einer for-Schleife zum Summieren Werte in einer Liste, kann ein IndexError auftreten, wenn Sie versuchen, mit „ar[i]“ auf Elemente zuzugreifen, wobei „i“ das aktuelle Element der Liste darstellt.
Der Der Fehler tritt auf, weil „ar[i]“ versucht, mit dem aktuellen Element als Index in die Liste zu indizieren. Das aktuelle Element ist jedoch nicht der Index selbst, sondern der Wert an diesem Index. Im angegebenen Code versuchen Sie, einen Wert als Index zu verwenden, was nicht zulässig ist.
Um diesen Fehler zu beheben, ändern Sie die Schleife wie folgt:
for i in ar: theSum = theSum + i
Anstatt die Liste mit „i“ zu indizieren, fügen Sie das durch „i“ dargestellte aktuelle Element direkt zu „theSum“ hinzu.
Alternativ , können Sie eine Bereichsschleife verwenden:
for i in range(len(ar)): theSum = theSum + ar[i]
„range(len(ar))“ generiert einen Bereich gültiger Indizes für die Liste, und Sie können „ar[i]“ innerhalb dieser Schleife ohne verwenden Der Fehler ist aufgetreten.
Das obige ist der detaillierte Inhalt vonWarum wirft „ar[i]“ einen IndexError in einer „for i in ar“-Schleife aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!