前提
在数据解析的过程中,因为获取的数据是一个很长的16进制字符串,需要将其转换成python 的字节数据进行处理,对每一个字节进行处理。在查找了很多国内的论坛之后,都没有发现很好的解决方法,最后在StackOverFLow找到了大神的解析,说的通俗易懂,运行成功。StackOverFlow NB!
这里附上原文连接:
原文连接点这里
解答
假设十六进制字符串如下:
>>> hex_string = "deadbeef"
首先转换语句根据python版本的不同有所不同:
- Python <= 2.7
>>> hex_data = hex_string.decode("hex")
>>> hex_data
"\xde\xad\xbe\xef"
- Python > 2.7
>>> bytes.fromhex(hex_string) # Python ≥ 3
b'\xde\xad\xbe\xef'
>>> bytearray.fromhex(hex_string)
bytearray(b'\xde\xad\xbe\xef')