Pythonでは、structモジュールを使用して、bytesとfloatの相互変換を行うことができます。

floatからbytesへの変換

floatからbytesへの変換は、struct.pack関数を使用します。以下に例を示します。

import struct

val = 123.4
bytes_val = struct.pack('<f', val)
print(bytes_val)  # 出力: b'\\xcd\\xcc\\xf6B'

bytesからfloatへの変換

bytesからfloatへの変換は、struct.unpack関数を使用します。以下に例を示します。

import struct

bytes_val = b'\\xcd\\xcc\\xf6B'
float_val = struct.unpack('<f', bytes_val)[0]
print(float_val)  # 出力: 123.4000015258789

float配列とbytesの相互変換

float配列とbytesの相互変換も可能です。以下に例を示します。

import struct

# float配列からbytesへの変換
vals = [123.4, 234.5]
bytes_vals = struct.pack('<ff', *vals)
print(bytes_vals)  # 出力: b'\\xcd\\xcc\\xf6B\\x00\\x80jC'

# bytesからfloat配列への変換
float_vals = list(struct.unpack('<ff', bytes_vals))
print(float_vals)  # 出力: [123.4000015258789, 234.5]

以上がPythonでbytesとfloatの相互変換を行う基本的な方法です。これらの方法を理解し、適切に使用することで、バイナリデータの操作が可能になります。.

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です