为了账号安全,请及时绑定邮箱和手机立即绑定

如何在python中解码ascii字符串?

如何在python中解码ascii字符串?

眼眸繁星 2021-03-22 09:16:04
例如,在您的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>?谢谢
查看完整描述

2 回答

?
幕布斯7119047

TA贡献1794条经验 获得超8个赞

>>> a = rb"\x3cdiv\x3e"

>>> a.decode('unicode_escape')

'<div>'


查看完整回答
反对 回复 2021-03-23
?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

使用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的字节必须用转义符表示。


查看完整回答
反对 回复 2021-03-23
  • 2 回答
  • 0 关注
  • 304 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信