如果您在Python 2的時候,那麼我會懷疑你得到的東西是這樣的:
>>> s = "◣⛭◣◃✺▲♢"
>>> s[0]
'\xe2'
要到Unicode代碼點在UTF-8編碼的文件(或緩衝液),你需要decode它變成一個Python unicode對象第一(否則你會看到構成th的字節UTF-8編碼)。
>>> s_utf8 = s.decode('utf-8')
>>> s_utf8[0]
u'\u25e3'
>>> ord(s_utf8[0])
9699
>>> hex(ord(s_utf8[0]))
'0x25e3'
在你的情況,你可以從ORD()直接到文字的unicode逃生像這樣的東西:
>>> "\\u\x" % (ord(s_utf8[0]))
'\\u25e3'
或轉換整個字符串中的一個去同一個列表理解:
>>> ''.join(["\\u%04x" % (ord(c)) for c in s_utf8])
'\\u25e3\\u26ed\\u25e3\\u25c3\\u273a\\u25b2\\u2662'
當然,當你在做的轉換這樣,你會在STR爲顯示代碼點的所有字符ING。你必須決定要顯示的代碼點,或者基本知識也將被轉義:
>>> ''.join(["\\u%04x" % (ord(c)) for c in u"ABCD"])
'\\u0041\\u0042\\u0043\\u0044'
或者,只是使用喬格的建議,讓蟒蛇身影了這一切,你。
嘗試'u「▲▲。」.encode('unicode-escape')' – georg