首页 > 解决方案 > 如何将十六进制字符串转换为列表中的十六进制值块?

问题描述

我有下面的十六进制字符串,即

hex_val = 010000263032efbfbdefbfbd42efbfbd

我需要结果,

[0x01,0x00,0x00,0x26,0x30,0x32,0xef,0xbf,0xbd,0xef,0xbf,0xbd,0x42,0xef,0xbf,0xbd]

我试过了,

hex_string = "0x"+hex_val
value = hex_string[2:] if len(hex_string) % 2 == 0 else "0" + 
hex_string[2:]
print([",".join(value[i:i+2] for i in range(0, len(value), 2))])

标签: pythonpython-3.x

解决方案


[hex(int(hex_val[i]+hex_val[i+1], 16)) for i in range(0, len(hex_val), 2)]

推荐阅读