HOWTO · Python
Korrigieren den Fehler string indices must be integers in Python
In diesem Tutorial wird der Fix-String muss ein Indexfehler in Python sein.
Auf dieser Seite
Ein String ist eine Sammlung von Zeichen. In Python kann man es sich als Iteration von Zeichen vorstellen.
Jedes Zeichen einer Zeichenkette hat einen bestimmten Index. Wir können leicht auf Zeichen an verschiedenen Positionen zugreifen, indem wir ihre Indizes verwenden.
In diesem Artikel wird der Python-Fehler string indices must be integers beschrieben. Dies ist ein TypeError.
Ein TypeError tritt in Python auf, wenn eine Operation mit einem ungültigen Datentyp ausgeführt wird.
Lassen Sie uns nun eine Situation besprechen, in der dieser Fehler auftreten könnte. Siehe folgenden Code.
a = "SampleString"
print(a["e"])
Ausgabe:
TypeError: string indices must be integers
Sie können sehen, dass der obige Code den besprochenen Fehler auslöst.
Wir versuchen, auf ein einzelnes Zeichen ohne seinen Index im obigen Code zuzugreifen. Wie bereits erwähnt, müssen wir den Index des Zeichens in eckigen Klammern angeben, um dies zu erreichen.
Siehe Code unten.
a = "SampleString"
print(a[5])
Ausgabe:
e
Der obige Code gibt das Zeichen e zurück, da es an der 6. Position steht.
Beachten Sie, dass das erste Element in Python an der 0. Position gespeichert wird. Mit der Funktion len() kann die Länge des Strings zurückgegeben werden.
Eine andere Situation, in der wir auf diesen Fehler stoßen könnten, ist die Durchführung eines String-Slicing-Vorgangs. Beim String Slicing extrahieren wir Elemente zwischen gegebenen Positionen.
Wir geben die Anfangs- und Endposition innerhalb der eckigen Klammern an. Sehen wir uns nun das folgende Beispiel an.
a = "SampleString"
print(a[(5, 2)])
Ausgabe:
TypeError: string indices must be integers
Wir übergeben die Indizes im obigen Beispiel korrekt, aber als Tupel. Wir müssen sie mit einem Doppelpunkt : trennen, um diesen Fehler zu umgehen.
Beispielsweise:
a = "SampleString"
print(a[2:5])
Ausgabe:
mpl