读取 32 位浮点二进制数据文件(小端)

hak*_*ata 1 floating-point 32-bit python-2.7

我想在python中读取一个包含32位浮点二进制数据的二进制数据文件。我尝试在文件上使用 hexdump,然后在 python 中读取 hexdump。转换回浮点数时的一些值返回 nan。我检查了在组合 hexdump 值时是否犯了错误,但找不到任何错误。这就是我在 shell 中所做的:

hexdump -vc >> output.txt

输出的格式为 c0 05 e5 3f ... 等等

我加入了十六进制:'3fe505c0'

这是正确的方法吗?

Ign*_*ams 5

不。

>>> import struct
>>> struct.unpack('<f', '\xc0\x05\xe5\x3f')
(1.7892379760742188,)
Run Code Online (Sandbox Code Playgroud)