python怎么处理这样的unicode编码转换问题?
PHP中文网
PHP中文网 2017-04-17 17:07:37
0
2
655

遇到一个问题,就是在用scrapy抓中文网页的时候,用它的feed exporter来自动保存的时候中文会以unicode的字符保存,(注意不是unicode编码,而是字符,下面会再解释的)这样我想要再读取这个文件的时候,不知道怎么样才能再显示为中文。

这里解释一下具体的问题:

就是保存下来的中文在一个.txt文件中,文件中的内容就是:\u91ce\u6cfd\u96c5\u5b50
这个文件本身的编码就是utf-8的,也就是说这相当于用utf-8的编码形式打开一个文件,然后分别写入了'\','u','9','1','c','e','\'......等字符。
这样我再次读入这个文件的时候,例如:
file = open("new.txt")
a = read(file)
print a
那结果是:
"\\u91ce\\u6cfd\\u96c5\\u5b50"

然而,最终我想要的是u'\u91ce\u6cfd\u96c5\u5b50',请问有没有人知道应该怎么做?

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
伊谢尔伦

用unicode-escape就行了:
示例:

>>> a = "\u91ce\u6cfd\u96c5\u5b50"
>>> a
'\u91ce\u6cfd\u96c5\u5b50'
>>> b = unicode(a,"unicode-escape")
>>> b
u'\u91ce\u6cfd\u96c5\u5b50'
刘奇

雷雷

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!