デコード エラー: 未定義にマップされた文字
テキスト ファイルを読み取ろうとしているときに、Python 3 プログラムで次のエラーが発生しました。エラー:
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 2907500: character maps to `<undefined>`
説明:
このエラーは、「charmap」コーデックがテキスト ファイル内の特定のバイトをデコードできないことを示します。 「charmap」コーデックは、バイトを文字に直接マップする文字エンコーディングに使用されます。
解決策:
このエラーを解決するには、正しいエンコーディングを特定する必要があります。テキスト ファイルの名前を指定し、ファイルを開くときに指定します。バイト 0x90 には CP1252 エンコーディングで有効なマッピングがないため、ファイルでは UTF-8 や Latin-1 などの別のエンコーディングが使用されている可能性があります。
正しいエンコーディングを使用してファイルを開くには、エンコード引数:
file = open(filename, encoding="utf-8")
Latin-1 の場合エンコーディング:
file = open(filename, encoding="latin-1")
注:
テキスト ファイルの正しいエンコーディングを確認するには、「テキストのエンコーディングを決定する方法」に関するドキュメントを参照してください。
以上がPython の「UnicodeDecodeError: 'charmap' コーデックはバイトをデコードできません...」を修正する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。