python 转义符号\u

现在有一个字符串‘\\uff08397\\u7b49\\u7ea7’之类之类,其中所有的‘\u’都被当作了转义字符,想问一下怎么才能取消对转义符号的转义(绕口令?。。。。)
现在试过replace的方法,不过一直没有效果。。。。
语言是python2.7,急

在'\\uff08397\\u7b49\\u7ea7'前加上r,即:
r'\\uff08397\\u7b49\\u7ea7'
这样就取消转义了。这在Python叫做自然字符串。
例如:
>>> print(r'\\uff08397\\u7b49\\u7ea7')
输出:
\\uff08397\\u7b49\\u7ea7
在《简明Python教程》中有这么一句:

自然字符串
如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自
然字符串。
追问

可问题在于这个字符串是一个变量,如何转义?。。。。

追答

使用repr函数
>>> my_str = '\\uff08397\\u7b49\\u7ea7'
>>> print(my_str)
\uff08397\u7b49\u7ea7
>>> print(repr(my_str))
'\\uff08397\\u7b49\\u7ea7'

参考资料:《简明Python教程》

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-03-13
\u才是转义符,而你例中的\\u本身已经取消了转义。"\\u1234"代表“\、u、1、2、3、4”共6个字符。
第2个回答  2012-03-13
s = ‘\\uff08397\\u7b49\\u7ea7’
eval('"%s"'%s) # (397等级
相似回答