1

こんにちは、struct.pack関数を使用してnumpy.float32をパックするのに少し問題があります。

f32 = 38.2
struct.pack('f', f32)

32ビットでの38.2の16進表現は、0x4218CCCDです。ただし、Pythonターミナルを使用して前述のコードを実行すると(適切なモジュールをインポートした後)、出力は次のようになります。

'\xcd\xcc\x18B'

Bの前にあるはずの\x42が省略されている理由がわかりません。

私は64ビットマシンで32ビットバージョンのPython2.7を実行しています。何か案は?

前もって感謝します。

4

2 に答える 2

1

あなたはあなたが望むものを手に入れました。

>>> "\x42" == "B"
True
于 2011-06-03T18:33:11.960 に答える
0

\x42ASCIIに対応しBます。

于 2011-06-03T18:34:27.857 に答える