Предполагая, что вы используете как минимум 3.2, для этого есть встроенная функция :
int.from_bytes ( bytes, byteorder, *, signed = False )
...
Байты аргумента должны быть либо байтовым объектом, либо итеративным производящим байтом.
Аргумент byteorder определяет порядок байтов, используемый для представления целого числа. Если byteorder "большой", старший байт находится в начале массива байтов. Если byteorder "маленький", старший байт находится в конце массива байтов. Чтобы запросить собственный порядок байтов хост-системы, используйте sys.byteorder в качестве значения порядка байтов.
Аргумент со знаком указывает, используется ли дополнение до двух для представления целого числа.
int.from_bytes(b'\x00\x01', "big")
int.from_bytes(b'\x00\x01', "little")
int.from_bytes(b'\x00\x10', byteorder='little')
int.from_bytes(b'\xfc\x00', byteorder='big', signed=True)
struct
модуль, если вы хотите преобразовать сразу несколько переменных.