2011-08-09 29 views
1

如何在python中强制unicode转义?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' 

我与Python 2.6试了一下, OS X上为2.7,Debian Squeeze上为2.6。

谢谢你的时间。

回答

3

低于256的Unicode字符总是以\xrepr()表示编码,因为它是最小的空间消耗。

不过,它们是unicode,因为在开始时是u'。这只是一个代表性的问题。

如果你想它不过,你可以做

print repr(u'a\u00e4').replace('\\x','\\u00') 

+0

谢谢你,那很快! – tback