解決UnicodeDecodeError:'ascii'codec can't decode byte 0 xe 6 in position 0

1085 ワード

このバグは、中国語のテキストを処理するか、Pythonバージョンの問題かもしれません.
open(file, 'r', encoding=’utf-8’)

本人は問題を解決し、encoding=’utf-8’のみを追加した.
 
以下の内容を転載します.
Pythonコードの問題の解決策の総括、Python交流、技術交流区、魚Cフォーラム-Powered by Discuz!https://fishc.com.cn/thread-56452-1-1.html
############################################################################
Python2.xのバージョンのデフォルトの符号化はASCIIであり、ASCIIのデフォルトでは1バイトしかデータを格納しません.中国の漢字は博大で奥深いため、1バイトではすべての漢字を保存するのに十分ではない.ソリューション:Python 3はデフォルトでUTF-8符号化されているため、Python 3を使用します.
 
知識を伸ばす:Unicode符号化システムの発明は各国の文字の符号化を統一するためであるため、それを万国符号と呼ぶ.Unicodeは各言語に対して一意のバイナリ符号化表現を設けており,すなわちどの国の言語でもUnicode上で対応するコードを見つけることができる.したがって,異なる符号化システムが相互変換されると,Unicodeを用いて「仲介」を行うことができる.他の符号化システムからUnicodeへの変換プロセスを復号(decode)と呼び,Unicodeを他の符号化システムに変換するプロセスを符号化(encode)と呼ぶ.例えばA符号化はB符号化に変換する必要があり、A符号化->decode(A)->Unicode->encode(B)->B符号化
 
 
このブログもお勧めです.
'ascii'codec can't decode byte 0 xe 4 in position 0:ordinal not in range(128)-簡書https://www.jianshu.com/p/5017d8342dd2