ホームページ >バックエンド開発 >Python チュートリアル >テキスト ファイルを読み取るときに発生する Python 3 の「UnicodeDecodeError: 'charmap' codec」を修正するにはどうすればよいですか?
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 サイトの他の関連記事を参照してください。