我想在python中解码b"\x80"
(我想接收"\x80"
)。当我尝试b"\x80".decode("utf-8")
时,它给了我UnicodeDecodeError。
但是当我尝试仅仅是"\x80"
时,它给了我我所期望的。为什么会发生这种事,以及如何得到我所期望的?
发布于 2022-05-20 09:32:49
您可以使用拉丁文-1编码来获得您想要的结果。
>>> b"\x80".decode('latin-1')
'\x80'
这是一个涵盖\x00
到\xff
的8位编码。Unicode的前256个编码点基于拉丁文1(又名ISO/IEC 8859-1)。
您还可以使用编码unicode_escape
,它甚至可以与较高的unicode转义代码(如b"\u0080"
和b"\U00000080"
)一起工作。
>>> b"\u0080".decode('unicode_escape')
'\x80'
https://stackoverflow.com/questions/72316507
复制相似问题