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 に答える