1. ホーム
  2. パイソン

[解決済み】"for line in... "でUnicodeDecodeErrorが発生:'utf-8'コーデックはバイトをデコードできない。

2022-03-29 18:18:21

質問

以下は私のコードです。

for line in open('u.item'):
# Read each line

このコードを実行すると、いつも次のようなエラーが発生します。

UnicodeDecodeError: 'utf-8' コーデックは位置2892のバイト0xe9をデコードできません:無効な継続バイトです。

これを解決するために、open()に追加のパラメータを追加しようとしました。コードは以下のようになります。

for line in open('u.item', encoding='utf-8'):
# Read each line

しかし、また同じエラーが出ます。どうしたらいいのでしょうか?

解決方法は?

として Mark Ransom氏からの提案 その問題に対して、正しいエンコーディングを見つけました。そのエンコーディングは "ISO-8859-1" であるため open("u.item", encoding="utf-8")open('u.item', encoding = "ISO-8859-1") を実行すると、問題が解決します。