我试着理解Unicode和所有相关的东西。我做了一个utf-8.txt文件,显然是用utf-8编码的。上面写着“你好,世界!”里面。 我要做的是:
f = open('utf8.txt', mode = 'r', encoding = 'utf8')
f.read()
我得到的是:'\ufeffHello world!'前缀是从哪里来的?在
再来一次:
^{pr2}$打印字节给出:b'\xef\xbb\xbfHello world!'我想前缀是十六进制的。在
byte.decode('utf8')
上面的代码又给了我:'\ufeffHello world!'在
我做错什么了?如何从utf-8文件中检索到python的文本?在
感谢您的反馈!在
您的utf-8.txt编码为utf-8-bom,这与utf-8不同。对于utf-8-bom文件,“\uFEFF”将写入文件的开头。不要使用
encoding = 'utf8'
,请尝试encoding = 'utf-8-sig'
相关问题 更多 >
编程相关推荐