1

我有一个程序从一个文件中读取,该文件从该文件中获取 4 个字节。下面的十六进制应该是 0.5 的浮点数:

00 00 00 3F

我目前有一个显示整数值的方法,并希望将整数从 1056964608 转换为 0.5。这也应该能够处理负浮点数。有人可以向我解释如何在 Python 2.6 中做到这一点吗?

4

1 回答 1

8

使用struct模块:

>>> struct.unpack("<f", "\x00\x00\x00\x3f")
(0.5,)

如果您确实需要从整数转换,而不仅仅是从字节转换,您也可以这样做:

>>> struct.unpack("<f", struct.pack("<I", 1056964608))
(0.5,)
于 2012-06-11T02:51:33.097 回答