我正在尝试使用codecs.decode从十六进制解码为utf-8。我收到一个错误,我的字符串中有一个非十六进制数字,但是找不到类似的东西,并且在这样的站点中成功解码了它:https://onlineutf8tools.com/convert-hexadecimal-to-utf8
我尝试使用不同的方法,例如bytes.fromhex(),但遇到相同的错误。
import codecs
hexString = "0x35303839372c312c333733002c003130003a3930"
utf = codecs.decode(hexString, "hex").decode('utf-8')
这是预期的结果:50897,1,373,10:90
我得到的错误:
binascii.Error:使用“十六进制”编解码器解码失败(错误:找到了非十六进制数字)
您将需要删除0x
前缀:
import codecs
hexString = "0x35303839372c312c333733002c003130003a3930"[2:]
utf = codecs.decode(hexString, "hex").decode('utf-8')