我可以在我的ipython笔记本中执行此操作:
print(u"\u2605")
★
但我该如何倒退呢?也就是说,从符号转到unicode字符串。以UTF-8或UTF-16编码它给出了二进制表示。例如:
print('★'.encode('utf-16'))
B' \ XFF \ XFE \ X05&安培;'
答案 0 :(得分:6)
您可以使用unicode-escape
encoding:
>>> '★'.encode('unicode-escape')
b'\\u2605'
>>> print('★'.encode('unicode-escape').decode())
\u2605
或ord
如果您只想知道代码点:
>>> ord('★')
9733
>>> hex(ord('★')) # as hexa decimal
'0x2605'
>>> print(r'\u%x' % ord('★'))
\u2605
<强>更新强>
您还可以使用ascii
:
>>> print(ascii('★')) # NOTE: surrounding quote
'\u2605'
>>> print(ascii('★').strip("'"))
\u2605