怎样把'\\x'转成'\x'

怎样把'\\x'转成'\x'

因为在数据库中unicode字符串中如果想插入16进制数字,如'you are \x86 '这样的字符串,被读出来后会变成'you are \\x86',用print出来变成了'you are \x86 ',可是我的真正目的是想要把'\x86'变成一个字符,所以需要把'\\x'转成'\x',试了很多办法,几乎无法实现,请教高手!
u'you are \x86 '
不知道你是不是要这个
如果只是把'\\x86'变成'\x86'可以这样: '\\x86'.decode('string-escape')
楼上的,我试过'\\x86'.decode('string-escape'),结果还是'\\86'
二楼的朋友,我是要u'you are \x86 ',不过我是想把u'you are \\x86 '变成u'you are \x86 ',当然,我指的是这一类转换
我试过re.sub等一类字符串替换方法,结果都不行
不会吧,我在python2.5下面:
In [4]: '\\x86'.decode('string-escape')
Out[4]: '\x86'
不知道你的意思是不是 r'you are \x86'
'\\x86'.decode('unicode-escape')
库参考里有
http://www.python.org/doc/2.5.2/ ... #standard-encodings
我试过了,行的:
>>> print r"you are \x86".decode("string-escape")
you are ニ  
\x86 这个打出来是竖着的像1一样的字符。不过c过来的时候就变成了ニ 了 .......
恩,多谢scscsoce 和thsniperwolf, '\\x86'.decode('string-escape')的方法是可以,今天试了一下,不知道上次试的时候为什么不行