ホームページ >バックエンド開発 >Python チュートリアル >テキスト ファイルを読み取るときに発生する Python 3 の「UnicodeDecodeError: 'charmap' codec」を修正するにはどうすればよいですか?

テキスト ファイルを読み取るときに発生する Python 3 の「UnicodeDecodeError: 'charmap' codec」を修正するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-16 13:52:11887ブラウズ

How Do I Fix the Python 3 `UnicodeDecodeError: 'charmap' codec` When Reading Text Files?

UnicodeDecodeError: 'charmap' コーデックは位置 Y のバイト X をデコードできません

Python 3 でテキスト ファイルを読み取ろうとすると、次のような状況に遭遇する可能性がありますエラー:

UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 2907500: character maps to `<undefined>`

説明:

このエラーは、バイトを文字に変換する「charmap」コーデックが特定の文字をデコードできない場合に発生します。テキストファイル内のバイト。これは通常、ファイルが予期されたエンコードでエンコードされていないことが原因です。

デコード エラー:

この特定のエラーでは、バイト 0x90 が問題の原因となっています。このバイトは、Windows システムで一般的に使用される「charmap」エンコーディングのどの文字にもマップされていません。

解決策:

この問題を解決するには、以下が必要です。テキスト ファイルの正しいエンコーディングを決定します。これを行う 1 つの方法は、テキスト エディタを使用してファイルを検査し、デコードされていない文字を観察することです。

正しいエンコードを決定したら、Python でファイルを開くときにそれを指定できます。

file = open(filename, encoding="utf8")

この例では、テキスト ファイルに使用されるエンコーディングは「utf8」です。必ず正しいエンコーディングに置き換えてください。

正しいエンコーディングを使用すると、Python はエラーが発生することなくテキスト ファイル内のバイトをデコードできます。

以上がテキスト ファイルを読み取るときに発生する Python 3 の「UnicodeDecodeError: 'charmap' codec」を修正するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。