Frage

Ich sage meine Programmzeile auszudrucken 53 eines Ausgangs. Ist dieser Fehler mir zu sagen, dass es nicht so viele Zeilen und deshalb kann es nicht ausdrucken?

War es hilfreich?

Lösung

Wenn Sie eine Liste mit 53 Einzelteilen haben, die letzte ist thelist[52] weil die Indizierung bei 0 beginnen.

Andere Tipps

Ja,

Sie versuchen, ein Element der Liste zuzugreifen, die nicht existiert.

MyList = ["item1", "item2"]
print MyList[0] # Will work
print MyList[1] # Will Work
print MyList[2] # Will crash.

Haben Sie bekommen einen Off-by-one Fehler?

Ja. Die Sequenz nicht das 54th Element hat.

Das ist richtig. Liste der Index außerhalb des Bereichs "höchstwahrscheinlich bedeutet, dass Sie beziehen Element der Liste n-th, während die Länge der Liste kleiner als n.

Immer im Auge behalten, wenn Sie diesen Fehler überwinden wollen, um den Standardwert der Indizierung und Bereich beginnt bei 0, also wenn insgesamt Artikel 100 dann l [99] und Bereich (99) werden Sie auf den letzten Zugriff auf bis Element.

, wenn Sie diese Art von Fehlern angezeigt kreuzen Sie bitte mit Artikeln überprüfen, die in einem Bereich zwischen / Mitte kommen, und zu versichern, dass ihr Index nicht dauern, wenn Sie Ausgabe erhalten, dann haben Sie perfekt Fehler gemacht, die oben erwähnt wird.

Die Art und Weise Python Indizierung funktioniert, ist, dass es bei 0 beginnt, so dass die erste Zahl Ihrer Liste wäre [0]. Sie würden drucken müssen [52], als der Startindex 0 ist und  Daher Linie 53 ist [52].

subtrahieren 1 vom Wert und Sie sollten in Ordnung sein. :)

Wenn Sie eine Liste von Textdatei zu lesen, können Sie die letzte leere Zeile als Listenelement erhalten. Sie können es wie folgt loswerden:

list.pop()
for i in list:
   i[12]=....
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top