在python中,如何将字符串斜杠转换为转义序列

In python, how to transform the string slash to a escape sequence

我想知道如何将包含 Unicode ASCII 描述符的字符串转换为实际的 Unicode 字符。

例如,如何将 u"\\u1234" 转换为 u"\u1234" ?

谢谢。

decode('unicode-escape'),例如:

>>> s = u'\u03be'
>>> s
u'\u03be'
>>> print s
\u03be
>>> e = s.decode('unicode-escape')
>>> e
u'\u03be'
>>> print e
ξ

这行得通,但最好能解决问题的根源。字符串首先来自哪里?是JSON吗?一些 Python 代码?

这是我的做法,使用 ast.literal_evalast.literal_eval 解析 python 字面量 而不 执行嵌入其中的任何代码,因此在程序中使用它更安全。

关键思想是评估您想要的字符串表示形式,例如 u"34"

import ast

s=u"\u04d2"
s_bis=ast.literal_eval( u'u"'+s+u'"' )

编辑:georg 的解决方案要好得多。