我有一个程序,它从一个文件中读取,该文件从该文件中抓取 4 个字节。下面的十六进制应该是 0.5 的浮点数:
00 00 00 3F
我目前有一个显示整数值的方法,并希望将整数从 1056964608 转换为 0.5。这也应该能够处理负浮点数。有人可以向我解释如何在 Python 2.6 中做到这一点吗?
使用 struct
模块:
>>> struct.unpack("<f", "x00x00x00x3f")
(0.5,)
如果你真的需要从整数转换,而不仅仅是从字节转换,你也可以这样做:
>>> struct.unpack("<f", struct.pack("<I", 1056964608))
(0.5,)