Heim >Backend-Entwicklung >Python-Tutorial >Warum erhalte ich die Fehlermeldung „TypeError: String-Indizes müssen Ganzzahlen sein', wenn ich GitHub-Ausgabe-JSON-Daten verarbeite?
Warum „TypeError: String-Indizes müssen ganze Zahlen sein“ mit GitHub-Problemdaten?
Beim Konvertieren von GitHub-Problemdaten vom JSON-Format in CSV mit Python, Programmierer können auf den Fehler „TypeError: String-Indizes müssen Ganzzahlen sein“ stoßen. Um dieses Problem zu beheben, ist es wichtig, die Art des Fehlers zu verstehen und die erforderlichen Anpassungen am Code vorzunehmen.
Die Fehlermeldung weist auf eine Nichtübereinstimmung zwischen den erwarteten ganzzahlbasierten Indizes und den im verwendeten String-Indizes hin Code. Bei der Arbeit mit Strings ist der Zugriff auf bestimmte Zeichen über Integer-Indizes zulässig. Dieser Ansatz ist jedoch nicht auf andere Objekte wie Wörterbücher oder Listen anwendbar.
Eine Untersuchung des bereitgestellten Codes zeigt, dass das Problem in der folgenden Zeile liegt:
csv_file.writerow([item["gravatar_id"], item["position"], item["number"]])
Here, item is ein Wörterbuch und seine Schlüssel, nämlich „gravatar_id“, „position“ und „number“, stellen die Werte dar, die in die CSV-Datei geschrieben werden. Der Fehler tritt auf, weil Wörterbücher für den Zugriff auf ihre Werte Zeichenfolgenschlüssel und keine ganzzahligen Indizes verwenden.
Um dieses Problem zu beheben, muss der Code unbedingt geändert werden, um Zeichenfolgenindizes anstelle von ganzzahligen Indizes zu verwenden. Der korrigierte Code sollte wie folgt aussehen:
csv_file.writerow([item["gravatar_id"], str(item["position"]), str(item["number"])])
Durch die Konvertierung der numerischen Werte in Zeichenfolgen kann der Code die Daten erfolgreich in die CSV-Datei schreiben, ohne dass der Fehler „TypeError: Zeichenfolgenindizes müssen Ganzzahlen sein“ auftritt.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „TypeError: String-Indizes müssen Ganzzahlen sein', wenn ich GitHub-Ausgabe-JSON-Daten verarbeite?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!