我需要帮助,将一次从SQL获取的varbinary数据一次转换为4位,转换为int。 从上面的代码中,我获得的结果为('0x640761075D075A0 .....')。我的计划是取每4位交换一次(例如:0764 0761 07D5,依此类推),然后将每4位转换为整数。我该怎么办? 非常感谢你!
答案 0 :(得分:2)
尝试一下:
from struct import pack, unpack
def convert_hex_to_int(n:int, interval:int):
splitted = [hex(n)[2:][i:i+interval] for i in range(0, len(hex(n)[2:]), interval)]
return [unpack('<H', pack('>H', int(i, 16)))[0] for i in splitted]
print(convert_hex_to_int(0x640761075D07, 4))
它将返回list
中的int
:[1892, 1889, 1885]