如何在python中解码b "x80"?



我想在python中解码b"x80"(我想接收"x80")。当我尝试b"x80".decode("utf-8")时,它会给我UnicodeDecodeError
但当我只尝试"x80"时,它给了我所期望的。为什么会发生这种事,以及如何得到我所期望的?

您可以使用latin-1编码来获得所需的结果。

>>> b"x80".decode('latin-1')
'x80'

这是覆盖x00xff的8位编码。Unicode的前256个代码点基于latin-1(又名ISO/IEC 8859-1)

您还可以使用编码unicode_escape,它甚至可以与更高的unicode转义码(如b"u0080"b"U00000080")一起使用。

>>> b"u0080".decode('unicode_escape')
'x80'

最新更新