Ответ 1
Ответ находится в sys module:
>>> import sys
>>> sys.byteorder
'little'
Конечно, в зависимости от вашей машины он может вернуться 'big'
. Конечно, ваш метод тоже должен работать.
Я пытаюсь найти лучший способ определить, работает ли мой код на моем компьютере - это big-endian или little-endian. У меня есть решение, которое работает (хотя я не тестировал его на машине большого конца), но кажется немного неуклюжим:
import struct
little_endian = (struct.pack('@h', 1) == struct.pack('<h', 1))
Это просто сравнение "родного" двухбайтового пакета с небольшим-endian пакетом. Есть ли более красивый способ?
Ответ находится в sys module:
>>> import sys
>>> sys.byteorder
'little'
Конечно, в зависимости от вашей машины он может вернуться 'big'
. Конечно, ваш метод тоже должен работать.