我有一个十六进制字符串
hexDecoded = '0xa506f7374696e6720446174653a204a756c792031322c2032303038205b45426f6f6b20233238395d0a52656c6561736520446174653a204a756c792c20313939350a5b4c61737420757064617465643a204a616e756172792031332c20323031325d0a0a0a4c616e67756167653a20456e676c6973680a0a0a2a2a2a205354'
在尝试获取文本时
text = bytearray.fromhex(hexDecoded.lstrip('0x')).decode()
我得到了错误
ValueError:在位置255的fromhex() arg中找到的非十六进制数
我不明白为什么代码要查看十六进制字符串中的255位,而剔除的十六进制字符串的长度只有255。
你知道这里缺少什么吗。
感谢你的帮助
发布于 2019-06-25 03:05:50
这是因为该字符串包含奇数位数,留下尾随的4
为单例。
bytearray.fromhex('4')
会产生相同的错误。
如果将其更改为04
,则可以正常工作。
https://stackoverflow.com/questions/56742408
复制相似问题