我正在分析一个文件,其中有一些utf8编码的文本和普通文本,如-
str = "Name: \xE1\x83\x92\xE1\x83\x90\xE1\x83\x9B\xE1\x83\x90\xE1\x83\xA0\xE1\x83\xAF\xE1\x83\x9D\xE1\x83\x91\xE1\x83\x90"
我已经用utf8编码打开了文件open("TEXT.txt", "r", encoding="utf8")
我希望打印(str)结果是Name: გამარჯობა
我已经尝试过再次编码和解码,它给了我意想不到的奇怪结果。而且,我不能用str.decode()
来完全解码它,因为它显然已经解码了
通过将字符串编码为“latin-1”以获取字节,然后解码为UTF-8,可以将字符串转换为预期值:
如果您使用的是Python2,那么问题中的字符串就是预期字符串的repr
它可以从UTF-8直接解码为unicode(假设UTF-8是Python 2解释器的默认编码):
相关问题 更多 >
编程相关推荐