如果我使用像http://www.h-schmidt.net/FloatConverter/IEEE754.html这样的网站将十六进制字符串'424E4B31'
转换为float32,我会得到51.57343。
我需要使用Python来转换字符串,但是,使用StackExchange上的解决方案,如:
import struct, binascii
hexbytes = b"\x42\x4E\x4B\x31"
struct.unpack('<f',hexbytes)
或
struct.unpack('f', binascii.unhexlify('424E4B31'))
我得到2.9584e-09 ......为什么会有所不同?
答案 0 :(得分:4)
因为字节序是一种东西。
>>> struct.unpack('>f',hexbytes)
(51.573429107666016,)