在Python中转换类似\\uXXXX的字符串

22 投票
3 回答
9828 浏览
提问于 2025-04-15 22:40

我从一个第三方服务那里收到了这样的字符串:

>>> s
'\\u0e4f\\u032f\\u0361\\u0e4f'

我知道这个字符串实际上包含了单个反斜杠、字母u等的序列。我该怎么做才能把这个字符串中的 '\\u0e4f' 替换成 '\u0e4f'(也就是 '๏')呢?对于这个例子,最终的结果应该是 '๏̯͡๏'

3 个回答

4

Python3:

bytes("\\u0e4f\\u032f\\u0361\\u0e4f", "ascii").decode("unicode-escape")
5

这里有一个有趣的编码列表,这是在使用.encode().decode()方法时支持的。第二个表格中的那些神奇的编码包括unicode_escape

24

在2.x版本中:

>>> u'\\u0e4f\\u032f\\u0361\\u0e4f'.decode('unicode-escape')
u'\u0e4f\u032f\u0361\u0e4f'
>>> print u'\\u0e4f\\u032f\\u0361\\u0e4f'.decode('unicode-escape')
๏̯͡๏

撰写回答