我试图加载一个文本文件,其中包含与Python的读取非ASCII文本文件
content=open("file.txt","r").read()
导致此错误消息德国的一些信件
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 26: ordinal not in range(128)
如果我修改该文件只包含ASCII字符一切都按预期工作。
Apperently使用
content=open("file.txt","rb").read()
或
content=open("file.txt","r",encoding="utf-8").read()
都做的工作。
为什么使用“二进制”模式读取并获得与utf-8编码相同的结果?
好吧,我看到'型(开放式(ULF_DIR +“Banken银行。 ())“返回”字节“和”类型“(open(ULF_DIR +”Banken.txt“,”r“,encoding =”utf-8“)。read())'返回str 。我将输出写入另一个文件并且感到困惑,因为生成的文件在两种方法上看起来都一样,而且在输入数据后我忽略了不同的类型。 –