例如,在您的python shell(IDLE)中:>>> a = "\x3cdiv\x3e">>> print a您得到的結(jié)果是:<div>但如果a是ascii編碼的字符串:>>> a = "\\x3cdiv\\x3e" ## it's the actual \x3cdiv\x3e string if you read it from a file>>> print a您得到的結(jié)果是:\x3cdiv\x3e現(xiàn)在我真正想要的a是<div>,所以我這樣做了:>>> b = a.decode("ascii")>>> print b但是令人驚訝的是我沒有得到想要的結(jié)果,它仍然是:\x3cdiv\x3e所以基本上我該怎么辦轉(zhuǎn)換a,這是\x3cdiv\x3e對(duì)b,這應(yīng)該是<div>?謝謝
2 回答

幕布斯7119047
TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊
>>> a = rb"\x3cdiv\x3e"
>>> a.decode('unicode_escape')
'<div>'

斯蒂芬大帝
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
使用python 3.x,您可以將Kabie的答案改編為
a = b"\x3cdiv\x3e"
a.decode('unicode_escape')
或者
a = b"\x3cdiv\x3e"
a.decode('ascii')
都給
>>> a
b'<div>'
什么是b前綴?
字節(jié)字面量始終以“ b”或“ B”為前綴;它們產(chǎn)生字節(jié)類型而不是str類型的實(shí)例。它們只能包含ASCII字符;數(shù)值等于或大于128的字節(jié)必須用轉(zhuǎn)義符表示。
添加回答
舉報(bào)
0/150
提交
取消