我使用Python通过urllib2
获取一些信息,但是信息是unicode字符串。在
我试过以下方法:
a = "\u65b9\u6cd5\uff0c\u5220\u9664\u5b58\u50a8\u5728"
print unicode(a).encode("gb2312")
a = "\u65b9\u6cd5\uff0c\u5220\u9664\u5b58\u50a8\u5728"
print a.encode("utf-8").decode("utf-8")
a = "\u65b9\u6cd5\uff0c\u5220\u9664\u5b58\u50a8\u5728"
print u""+a
a = "\u65b9\u6cd5\uff0c\u5220\u9664\u5b58\u50a8\u5728"
print str(a).decode("utf-8")
a = "\u65b9\u6cd5\uff0c\u5220\u9664\u5b58\u50a8\u5728"
print str(a).encode("utf-8")
a = "\u65b9\u6cd5\uff0c\u5220\u9664\u5b58\u50a8\u5728"
print a.decode("utf-8").encode("gb2312")
但所有结果都是一样的:
^{pr2}$我想得到以下中文文本:
方法,删除存储在
您需要将
string
转换为unicode string
。在首先,
a
中的反斜杠是自动转义的:因此,处理这个转义字符串的编码/解码没有任何区别。在
您可以使用
unicode literal
或将字符串转换为unicode string
。在要使用
^{pr2}$unicode literal
,只需在字符串前面添加一个u
:要将现有的}作为
string
转换为unicode string
,可以调用unicode
,其中{encoding
参数:我敢打赌您将从
JSON
响应中得到string
,因此第二种方法很可能就是您需要的。在顺便说一句,
unicode_escape
编码是Python特有的编码,用于你从哪里得到这些数据?也许你可以分享你下载和提取它的方法。在
不管怎样,它看起来有点像JSON编码字符串的残余?基于这一假设,这里有一个非常老套(并非完全严肃)的方法:
这涉及到重新创建一个有效的JSON编码字符串,方法是用双引号将给定的字符串包装在
a
中,然后将JSON字符串解码为Python unicode字符串。在相关问题 更多 >
编程相关推荐