Python 强制使用 Unicode 转义

1 投票
1 回答
680 浏览
提问于 2025-04-16 23:11

我该如何在Python中强制使用Unicode转义呢?

我有一个Unicode字符串 u'aä' 或者 u'a\u00e4',我希望它能表示成 a\u00e4。这里建议的解决方案 并不适合我

>>> 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试过。

谢谢你的时间。

1 个回答

3

Unicode字符在256以下的总是用\x这种方式来表示,因为这样占用的空间最少。

不过,因为开头有u',所以它们还是Unicode字符。这只是表示方式的问题。

如果你还是想要这样做,你可以这样写:

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

.

撰写回答