[Python-es] Cambio de enteros a flotantes

Daπid davidmenhur en gmail.com
Mar Mar 14 04:23:05 EDT 2017


> Me pueden sugerir alguna forma de cambiar un archivo binario de 32 bits enteros a un archivo binario de 32 bits flotantes?

Yo usaría Numpy, si te puedes permitir la dependencia.

array = np.fromstring(open(f_in).read(), dtype=np.int32).astype(np.float32)
with open(f_out, 'wb') as f_out:
   f_out.write(array.tostring())

2017-03-14 2:02 GMT+01:00 Miguel de Dios Matias <tres.14159 en gmail.com>:
> Así a voz de pronto vas a perder precisión porque creo que solo
> tendrías 6 dígitos y el resto exponente frente a un entero que
> tendrías mas o menos 9 dígitos.

Sólo a partir de 8388607


Más información sobre la lista de distribución Python-es