Heim >Backend-Entwicklung >Python-Tutorial >Warum erhalte ich bei der Verarbeitung von JSON-Daten die Fehlermeldung „TypeError: String-Indizes müssen Ganzzahlen sein'?
TypeError: „String-Indizes müssen Ganzzahlen sein“ – Den Fehler verstehen
Beim Versuch, eine JSON-Datei in ein CSV-Format zu konvertieren, haben Sie Möglicherweise wird die folgende Fehlermeldung angezeigt: „TypeError: Zeichenfolgenindizes müssen Ganzzahlen sein.“ Dies tritt auf, wenn fälschlicherweise Zeichenfolgenindizes anstelle von Ganzzahlen verwendet werden, um auf Elemente innerhalb einer Zeichenfolge zuzugreifen.
Im bereitgestellten Python-Codeausschnitt:
for item in data: csv_file.writerow([item["gravatar_id"], item["position"], item["number"]])
Der Fehler ist auf die Verwendung von Zeichenfolgenindizes innerhalb des Elements zurückzuführen Variable, die eine Zeichenfolge darstellt, die die JSON-Daten enthält. Insbesondere beim Versuch, auf item["gravatar_id"], item["position"] und item["number"] zuzugreifen, sollten die Indizes "gravatar_id", "position" und "number" ganze Zahlen und keine Zeichenfolgen sein.
Um dieses Problem zu beheben, stellen Sie sicher, dass Sie mit den richtigen Ganzzahlindizes auf die Elemente zugreifen. Zum Beispiel:
for item in data: csv_file.writerow([data[0], data[1], data[2]])
In diesem Fall repräsentieren die Indizes 0, 1 und 2 das erste, zweite bzw. dritte Element in der Elementliste. Durch die Verwendung ganzzahliger Indizes kann das Skript korrekt auf die Daten zugreifen und diese in die CSV-Datei schreiben.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich bei der Verarbeitung von JSON-Daten die Fehlermeldung „TypeError: String-Indizes müssen Ganzzahlen sein'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!