ValueError:在fromhex()arg中的位置找到的非十六进制数字

时间:2019-06-24 18:56:55

标签: python hex

我有一个十六进制字符串

hexDecoded = '0xa506f7374696e6720446174653a204a756c792031322c2032303038205b45426f6f6b20233238395d0a52656c6561736520446174653a204a756c792c20313939350a5b4c61737420757064617465643a204a616e756172792031332c20323031325d0a0a0a4c616e67756167653a20456e676c6973680a0a0a2a2a2a205354'

关于尝试以

格式获取文本
text = bytearray.fromhex(hexDecoded.lstrip('0x')).decode()

我收到错误

ValueError:在位置255的fromhex()arg中找到非十六进制数字

当剥离的十六进制字符串的长度仅为255时,我不明白为什么代码在十六进制字符串中查看位置255。

任何想法,这里缺少什么。

感谢帮助

1 个答案:

答案 0 :(得分:3)

这是因为该字符串包含奇数个数字,而尾随4为单身。

bytearray.fromhex('4')产生相同的错误。

如果将其更改为04,它将起作用。