如何在python中强制执行unicode转义?
我有unicode字符串u'aä'
或u'a\u00e4'
,我希望它表示为a\u00e4
。解决方案建议here对我不起作用:
>>> repr(u'a\u00e4')
"u'a\\xe4'"
根据我的理解,以下尝试应该是正确的解决方案(但不是):
>>> u'a\u00e4'.encode('unicode-escape')
'a\\xe4'
我在OS X上使用python 2.6和2.7以及在Debian Squeeze上使用2.6进行了尝试。
感谢您的时间。
答案 0 :(得分:3)
256以下的Unicode字符始终在其\x
表示中使用repr()
进行编码,因为它占用的空间最小。
尽管如此,由于u'
在开始时它们是unicode。这只是一个代表问题。
如果你想要它,你可以做
print repr(u'a\u00e4').replace('\\x','\\u00')