IndexError: list index out of range

Ich bin mit Python 3.5, 32-bit auf Windows 10.

Während ich bin mir bewusst, dass die Fragen bezüglich dieser Fehlermeldung wurden gestellt und beantwortet Häufig, ich kann immer noch nicht herausfinden, warum mein code oder die entsprechenden .txt-Datei, die eigentlich zu diesem Fehler führen.

Der code ist eine 1:1 Kopie aus einem Python-Anfänger-Buch und ein Derivat von diesem code, wo ich nur änderte den Namen des Wörterbuchs und verwendet ein anderes .txt-Datei hat gut funktioniert.

Hier ist der code:

woerter={}
fobj=open("Woerterbuch.txt","r")
for line in fobj:
   zuordnung=line.split(" ")
   woerter[zuordnung[0]] = zuordnung[1]
fobj.close()

print(woerter)

Und hier ist die entsprechende .txt-Datei:

Spain Spanien
Germany Deutschland
Sweden Schweden
France Frankreich
Italy Italien

Dem code ergibt folgenden Fehler:

    Traceback (most recent call last):
      File "C:\Users\Christian\Desktop\Python-Programme\Dateiausleseprogramm2.py", line 5, in <module>
        woerter[zuordnung[0]] = zuordnung[1]
    IndexError: list index out of range
Vermutlich haben Sie leere Zeilen, oder Zeilen, die ohne Leerzeichen an, also zuordnung endet als eine Liste mit nur einem element.
Dann zuordnung[1] versucht, Zugriff auf das zweite element einer Zeile mit nur 1. Es ist wahrscheinlich eine nachfolgende Zeilenumbruch in der text-Datei.
versuchen Sie, eine print(zuordnung) Linie zwischen Ihren split() und die woerter Zuordnung. Dies kann Ihnen helfen, die Spur der Fehler. Ist Ihre woerterbuch.txt nur 5 Zeilen lang ist?
Isolieren Sie die Eingabe-Zeile, stirbt Sie. Meine Vermutung ist, dass es dann keinen Speicherplatz haben, aber vielleicht ein tab-Zeichen.
Ja, es ist nur 5 Zeilen lang ist, weil es ist einfach nur ein Programm, dass ich geschrieben habe, für das Ziel der übung.

InformationsquelleAutor Christian Singer | 2016-11-07

Schreibe einen Kommentar