python ascii到unicode转换

时间:2013-12-09 17:08:04

标签: python unicode

我有一个包含这样数据的文件:

\r\n\tSoci\u00e9t\u00e9 implant\u00e9 dans l'internet recrute des t\u00e9l\u00e9conseillers en b to b pour effectuer de la prise de rendez-vous qualifi\u00e9 pour de la conception de site internet et du r\u00e9f\u00e9rencement google.

如何将其打印为unicode,如下所示:

Société implanté dans l'internet recrute des téléconseillers en b to b pour effectuer de la prise de rendez-vous qualifié pour de la conception de site internet et du référencement google.

我知道我必须使用一些unicode功能但是什么?

1 个答案:

答案 0 :(得分:2)

看起来像是一个python unicode字符串文字;从unicode_escape解码此内容。

演示:

>>> data = "\r\n\tSoci\u00e9t\u00e9 implant\u00e9 dans l'internet recrute des t\u00e9l\u00e9conseillers en b to b pour effectuer de la prise de rendez-vous qualifi\u00e9 pour de la conception de site internet et du r\u00e9f\u00e9rencement google."
>>> data.decode('unicode_escape')
u"\r\n\tSoci\xe9t\xe9 implant\xe9 dans l'internet recrute des t\xe9l\xe9conseillers en b to b pour effectuer de la prise de rendez-vous qualifi\xe9 pour de la conception de site internet et du r\xe9f\xe9rencement google."
>>> print data.decode('unicode_escape')

    Société implanté dans l'internet recrute des téléconseillers en b to b pour effectuer de la prise de rendez-vous qualifié pour de la conception de site internet et du référencement google.

您可以在从文件中读取数据时使用二进制模式对数据进行解码,也可以在Python 2中使用io.open(),或在Python 3中使用常规open()来解码数据在飞行中:

from io import open

with open(filename, 'r', encoding="unicode_escape") as inputfile:
    for line in inputfile:
        print(inputfile)

请注意,JSON字符串使用相同的转义语法; \uhhhh表示仅使用ASCII字符的Unicode代码点。