UnicodeDecodeError: ファイル処理で無効なバイト シーケンスの処理
エラー「UnicodeDecodeError: 'utf-8' codec can't decode」が発生した場合byte" open(...) 構造で for 行を使用している場合、これはファイル エンコーディングに問題があることを示しています。
指定されたコード スニペットでは、open( を使用して utf-8 エンコーディングでファイルを開こうとしています。 'u.item'、encoding='utf-8') では問題は解決されません。これは、ファイルが utf-8 とは異なるエンコードを使用している可能性があるためです。
正しいエンコードを判断するには、chardet ライブラリを使用してファイルを分析し、そのエンコードを識別してみてください。あるいは、ファイルのドキュメントまたはメタデータを参照して、使用されているエンコーディングに関する情報を見つけることもできます。
正しいエンコーディングを決定したら、次のように open() 関数で指定できます。
<code class="python">for line in open('u.item', encoding="encoding_name"): # Read each line</code>
提供されたソリューションでは、ファイルは「ISO-8859-1」でエンコードされていることが判明したため、正しいコードは次のようになります。
<code class="python">for line in open('u.item', encoding="ISO-8859-1"): # Read each line</code>
正しいエンコードを指定すると、ファイルの内容を正しくデコードし、UnicodeDecodeError を回避できます。
以上がPython でファイルを開くときに UnicodeDecodeError を処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。