我有一个十六进制字符串
hexDecoded = '0xa506f7374696e6720446174653a204a756c792031322c2032303038205b45426f6f6b20233238395d0a52656c6561736520446174653a204a756c792c20313939350a5b4c61737420757064617465643a204a616e756172792031332c20323031325d0a0a0a4c616e67756167653a20456e676c6973680a0a0a2a2a2a205354'
尝试获取文本为
text = bytearray.fromhex(hexDecoded.lstrip('0x')).decode()
我得到了错误
ValueError:在位置 255 的 fromhex() arg 中发现非十六进制数
当剥离的十六进制字符串的长度仅为 255 时,我无法理解为什么代码会查看十六进制字符串中的位置 255。
任何想法这里缺少什么。
感谢帮助
最佳答案
这是因为该字符串包含奇数个数字,使尾随 4
成为单例。
bytearray.fromhex('4')
产生相同的错误。
如果将其更改为 04
,它会起作用。
关于python - 值错误 : non-hexadecimal number found in fromhex() arg at position,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56742408/