小编典典

十六进制字符串到python中的字节数组

python

我有一个很长的十六进制字符串,代表一系列不同类型的值。我希望将此十六进制字符串转换为字节数组,以便可以将每个值移出并将其转换为适当的数据类型。


阅读 821

收藏
2020-02-20

共1个答案

小编典典

假设您的十六进制字符串类似于

>>> hex_string = "deadbeef"

将其转换为字符串(Python≤2.7):

>>> hex_data = hex_string.decode("hex")
>>> hex_data
"\xde\xad\xbe\xef"

或从Python 2.7和Python 3.0开始:

>>> bytes.fromhex(hex_string)  # Python ≥ 3
b'\xde\xad\xbe\xef'
>>> bytearray.fromhex(hex_string)
bytearray(b'\xde\xad\xbe\xef')

请注意,这bytes是的不变版本bytearray

2020-02-20