Heim > Backend-Entwicklung > Python-Tutorial > Warum wirft „ar[i]' einen IndexError in einer „for i in ar'-Schleife aus?

Warum wirft „ar[i]' einen IndexError in einer „for i in ar'-Schleife aus?

Barbara Streisand
Freigeben: 2024-11-01 03:13:02
Original
1080 Leute haben es durchsucht

Why Does

Identifizieren des Problems: Warum ein IndexError in „ar[i]“ innerhalb von „for i in ar“ auftritt

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.

Den Fehler verstehen

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.

Beheben des Problems

Um diesen Fehler zu beheben, ändern Sie die Schleife wie folgt:

for i in ar:
    theSum = theSum + i
Nach dem Login kopieren

Anstatt die Liste mit „i“ zu indizieren, fügen Sie das durch „i“ dargestellte aktuelle Element direkt zu „theSum“ hinzu.

Alternative Lösung: Verwenden von Range

Alternativ , können Sie eine Bereichsschleife verwenden:

for i in range(len(ar)):
    theSum = theSum + ar[i]
Nach dem Login kopieren

„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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage