3

在 Python 2.x 中,如何将 unicode 字符串(例如,u'\xe0')转换为字符串(这里我需要它'\u00E0')?

让它更清楚。我确实喜欢有'\u00E0'一个长度为 6 的字符串。也就是说,¥u它被视为 2 个字符而不是一个转义字符。

4

1 回答 1

5

\u在 Python 2 中不作为字符串转义序列存在。

您可能指的是 JSON 编码的字符串:

>>> s = u'\xe0'
>>> import json
>>> json.dumps(s)
'"\\u00e0"'

或 UTF-16 (big-endian) 编码的字符串:

>>> s.encode("utf-16-be")
'\x00\xe0'

但您最初的要求无法满足。

顺便说一句,请注意u'\u00e0'与 相同u'\xe0',但'\u00e0'不存在:

>>> u'\u00e0'
u'\xe0'
于 2013-11-01T09:19:08.320 回答