我在下面的测试中使用python 2.7
print repr(u'中')
print repr(u'Œ')
print repr(u'Ȧ')
print repr(u'\r')
print repr(u'1')
我得到了结果
u'\u4e2d'
u'\u0152'
u'\u0226'
u'\r'
u'1'
有些以\u
开头,但有些不是。
如何将\r
打印为\u000D
?或'1'
为\u0031
?
答案 0 :(得分:1)
您需要的是角色的序数或其在角色表中的位置。这由'ord'返回。有关详细信息,请参阅:https://docs.python.org/2/library/functions.html#ord和https://docs.python.org/2/howto/unicode.html
回程是13(请参阅:http://www.theasciicode.com.ar/ascii-control-characters/carriage-return-ascii-code-13.html)ord(u'\r')
(或十六进制为0xD)
并且'中'是ord(u'中')
如果您希望以十六进制表示,则可以执行类似'%04X' % ord(u'中')
的操作,这将返回4E2D
。
希望这有帮助。