Heim >Backend-Entwicklung >Python-Tutorial >Wie behebt man UnicodeDecodeError beim Lesen von Dateien in Python?

Wie behebt man UnicodeDecodeError beim Lesen von Dateien in Python?

DDD
DDDOriginal
2024-11-04 05:06:29343Durchsuche

How to Fix UnicodeDecodeError When Reading Files in Python?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn