2017-01-08 111 views
-2

我有以下unicode:s = u'\\u5b50'。 我想將s轉換爲m = u'\u5b50'。 我該怎麼做?Python unicode轉換

s = u'\\u5b50' 
m = u'\u5b50' 
print len(s) # 6 
print len(m) # 1 
print s # \u5b50 
print m # 子 
+0

你有* JSON數據*吧?更廣泛的背景是什麼? –

+0

是的,我從JSON文件的字段中獲取此信息。 – Transcendental

+0

然後只解碼爲JSON。你能向我們展示更多的數據和你如何解碼? –

回答

0

這工作:

print s.decode('unicode-escape') # 子 
print len(s.decode('unicode-escape')) # 1 
+0

是的,直到你擊中一個UTF-16代理對,比如''\ uD83D \ uDC33'。這取決於你是否使用Python的廣泛的UCS4構建;你*可以*得到'u'\ ud83d \ udc33'或'u'\ U0001f433'。第一個是不正確的。 –