我有一个像"válido"
这样的字符串。通常python可以在命令提示符下轻松地将其转换为十六进制,这将变为'v\xc3\x83\xc2\xa1lido'
但是我想将\u
用于unicode代码点,所以我希望输出像"v\u00c2\u00a1lido"
所以基本上输入应该是"válido"
,输出应该是"v\u00c2\u00a1lido"
答案 0 :(得分:1)
\u
仅适用于Unicode字符串;用u
开始你的字符串文字:
u"v\u00c2\u00a1lido"
演示:
>>> u"v\u00c2\u00a1lido"
u'v\xc2\xa1lido'
>>> print u"v\u00c2\u00a1lido"
v¡lido
答案 1 :(得分:0)
我认为你需要json.dumps
:
>>> s="válido"
>>> s
'v\xc3\x83\xc2\xa1lido'
>>> json.dumps(s)
'"v\\u00c3\\u00a1lido"'
>>> print json.dumps(s)
"v\u00c3\u00a1lido"
对OP而言可能为时已晚,但希望它可以帮助那些试图解决同样问题的人。