[英]How do you decode an ascii string in python?
例如,在您的python shell(IDLE)中:
>>> a = "\x3cdiv\x3e"
>>> print a
您得到的结果是:
<div>
但是如果a
是ascii编码的字符串:
>>> a = "\\x3cdiv\\x3e" ## it's the actual \x3cdiv\x3e string if you read it from a file
>>> print a
您得到的结果是:
\x3cdiv\x3e
现在我真正想要a
是<div>
,所以我这样做了:
>>> b = a.decode("ascii")
>>> print b
但是令人惊讶的是我没有得到想要的结果,它仍然是:
\x3cdiv\x3e
因此,基本上我该怎么做将a
( \\x3cdiv\\x3e
为b
(应为<div>
?
谢谢
>>> a = rb"\x3cdiv\x3e"
>>> a.decode('unicode_escape')
'<div>'
还请检查一些有趣的编解码器 。
使用python 3.x ,您可以使Kabie的答案适应
a = b"\x3cdiv\x3e"
a.decode('unicode_escape')
要么
a = b"\x3cdiv\x3e"
a.decode('ascii')
都给
>>> a
b'<div>'
b
前缀是什么?
字节字面量始终以“ b”或“ B”为前缀; 它们产生字节类型而不是str类型的实例。 它们只能包含ASCII字符; 数值等于或大于128的字节必须用转义符表示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.