如何修复binascii.错误:使用“十六进制”编解码器解码失败(错误:找到非十六进制数字)

2024-10-01 04:52:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用编解码器.decode从十六进制解码到utf-8。 我得到一个错误,在我的字符串中有一个非十六进制的数字,而我找不到任何类似的东西,它在像这样的网站上被成功解码:https://onlineutf8tools.com/convert-hexadecimal-to-utf8

我试过用不同的方法,比如字节.fromhex()但我得到了同样的错误。你知道吗


import codecs

hexString = "0x35303839372c312c333733002c003130003a3930"
utf = codecs.decode(hexString, "hex").decode('utf-8')

这就是预期的结果: 50897,1373,10时90分

我得到的错误是:

你知道吗binascii.错误:使用“十六进制”编解码器解码失败(错误:找到非十六进制数字)


Tags: 字符串httpscomconvert网站错误编解码器数字
1条回答
网友
1楼 · 发布于 2024-10-01 04:52:18

您需要删除0x前缀:

import codecs
hexString = "0x35303839372c312c333733002c003130003a3930"[2:]
utf = codecs.decode(hexString, "hex").decode('utf-8')

相关问题 更多 >