Heim >Backend-Entwicklung >Python-Tutorial >Warum erhalte ich beim Zusammenführen von Listen die Fehlermeldung „TypeError: Listenindizes müssen Ganzzahlen oder Slices sein, nicht str'?
TypeError: Listenindizes müssen Ganzzahlen oder Slices sein
Beim Versuch, zwei Listen in einem einzigen Array zusammenzuführen, wird ein „TypeError: Listenindizes“ angezeigt muss ganze Zahlen oder Slices sein, nicht str“ kann ein Fehler auftreten. Dieser Fehler weist darauf hin, dass versucht wurde, über einen nicht ganzzahligen Wert (d. h. eine Zeichenfolge) auf ein Listenelement zuzugreifen.
Im bereitgestellten Codebeispiel sind die folgenden Anpassungen erforderlich, um diesen Fehler zu beheben:
array_length = len(array_dates)
Diese Zeile stellt sicher dass array_length einen ganzzahligen Wert enthält, der die Länge der array_dates-Liste darstellt.
for i in range(array_length):
The for Die Schleife sollte die Range-Funktion verwenden, um array_dates zu durchlaufen. Dadurch wird i bei jeder Iteration automatisch erhöht.
# Remove this line # i += 1
Da i automatisch um den Bereich erhöht wird , die Zeile i = 1 ist unnötig und sollte entfernt werden.
Alternativer Ansatz: Verwendung von zip Funktion
Alternativ können Sie die beiden Listen mit der Zip-Funktion kombinieren, sofern sie die gleiche Länge haben:
import csv dates = ['2020-01-01', '2020-01-02', '2020-01-03'] urls = ['www.abc.com', 'www.cnn.com', 'www.nbc.com'] csv_file_path = '/path/to/filename.csv' with open(csv_file_path, 'w') as fout: csv_file = csv.writer(fout, delimiter=';', lineterminator='\n') result_array = zip(dates, urls) csv_file.writerows(result_array)
Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Zusammenführen von Listen die Fehlermeldung „TypeError: Listenindizes müssen Ganzzahlen oder Slices sein, nicht str'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!