Преобразовать список байтов в int32 в python3

У меня есть список из нескольких 4x6 байтов (32-битных) значений в байтовом формате. Есть ли возможность преобразовать эти двоичные значения, эффективные в 32-битные целые числа в Python?

Существует метод int.from_bytes(xTest, byteorder='little', Sign = True), но было бы очень неэффективно циклически перебирать все значения. Может быть, у кого-то есть идея?

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

1 ответ

Решение

Используйте понимание списка, чтобы применить один и тот же оператор к каждому элементу вашего оригинала. xTest список:

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

Вот x проходит через каждый элемент (таким образом, ваши 4 байта) xTest и, таким образом, позволяет применять один и тот же оператор к каждому из них.

Другие вопросы по тегам