Estoy tratando de encontrar la mejor manera de determinar si la máquina en la que se ejecuta mi código es big-endian o little-endian. Tengo una solución que funciona (aunque no lo he probado en una máquina-big endian), pero parece un poco torpe:¿Cuál es la forma más pitonica de determinar endianness?
import struct
little_endian = (struct.pack('@h', 1) == struct.pack('<h', 1))
Esto es sólo la comparación de un paquete de dos bytes 'nativo' a una pequeña paquete indio ¿Hay alguna manera más bonita?
¿Por qué lo necesita saber? Su solución parece lo suficientemente buena, pero ciertamente no tiene que saber cuándo usar 'struct' en sí mismo? – u0b34a0f6ae
Cierto, pero no estoy usando el módulo struct (quizás debería ser, pero no soy el autor original del código que estoy corrigiendo). –