在花了好几个小时检查了每一篇与此相关的stackoverflow帖子之后,我正在绞尽脑汁解决一件非常简单的事情
我有一个带有unicode代码(不是字符、代码)的文本文件,例如:
"Edward escribi\u00c3\u00b3 la biograf\u00c3\u00ada de su autor favorito"
此字符串应显示为:
"Edward escribió la biografía de su autor favorito"
如果像平常一样加载文件,则在打印加载的文本时,只会看到unicode字符串:
import io
chars = io.open(fb_json_path, encoding='utf-8').read().strip()
上面印着:“Edward escribi\u00c3\u00b3 la biograf\u00c3\u00ada de su autor favorito”。如果我删除编码参数也是一样的
我想我需要告诉Python解释字符串中的代码并将它们显示为utf-8字符,但我不知道如何做到这一点
提前谢谢
我们可以通过两个步骤来实现这一点:
首先,我们使用
encoding='unicode_escape'
读取文件以转换所有的\uxxxx
然后,我们通过将其透明地编码为bytes对象(使用
latin-1
编解码器)将其转换为utf-8,并再次将其转换为文本,解码为utf-8我相信输入是由于编码错误造成的
C3 93
是ó
(LATIN CAPITAL LETTER O WITH ACUTE)的UTF-8编码字节在Python3控制台中运行
相关问题 更多 >
编程相关推荐