在 python3 中将字节列表转换为 int32

convert list of bytes to int32 in python3

我有一个字节格式的几个 4x6 字节(32 位)值的列表。是否有可能将这些二进制值有效地转换为 python 中的 32 位整数?

有方法int.from_bytes(xTest, byteorder='little', signed = True),但是循环遍历所有值会非常低效。也许有人有想法?

xTest = [b'\xf8\x80[\xf0', b'\x12\x81\x87\xef', b'-\x81\xc0\xee', b'I\x81\xf9\xed']

使用列表理解将相同的运算符应用于原始 xTest 列表的每个元素:

int_list = [int.from_bytes(x, byteorder='little', signed = True) for x in xTest]

此处 x 遍历 xTest 的每个元素(因此,您的 4 个字节),因此允许您对每个元素应用相同的运算符。