UnicodeDecodeError with „for line in…“
Beim Durchlaufen von Zeilen in einer Datei mit „for line in...“ "-Syntax kann ein UnicodeDecodeError auftreten, wenn die Datei Nicht-UTF-8-Zeichen enthält. Dieser Fehler tritt auf, weil die von Pythons open()-Funktion verwendete Standardkodierung UTF-8 ist, die möglicherweise nicht mit der tatsächlichen Kodierung der Datei übereinstimmt.
Lösung:
Um diesen Fehler zu beheben, müssen Sie beim Öffnen der Datei die richtige Dateikodierung angeben. Der einfachste Weg, dies zu tun, ist die Verwendung des Kodierungsparameters der Funktion open(). Beispiel:
<code class="python">for line in open('u.item', encoding='utf-8'): # Read each line</code>
Wenn die Datei jedoch nicht in UTF-8 kodiert ist, müssen Sie die richtige Kodierung angeben. In Ihrem Fall lautet die korrekte Codierung für die Datei „ISO-8859-1“. Um diese Codierung zu verwenden, ersetzen Sie den open()-Aufruf durch:
<code class="python">for line in open('u.item', encoding='ISO-8859-1'): # Read each line</code>
Dies sollte den UnicodeDecodeError beheben und es Ihnen ermöglichen, die Zeilen in der Datei korrekt zu durchlaufen.
Das obige ist der detaillierte Inhalt vonWie behebt man UnicodeDecodeError beim Lesen von Dateien in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!