【Python】byte配列を数値に変換する方法

この記事では、Pythonでbyte配列を数値に変換する方法を紹介します。

int.from_bytes()メソッドやstructモジュールを使用することで、簡単にバイト列を整数に変換することができます。

目次から探す

Pythonでのbyte配列から数値への変換方法

Pythonでは、byte配列を数値に変換するためのいくつかの方法が提供されています。

ここでは、int.from_bytes()メソッドとstructモジュールを使用した方法について解説します。

int.from_bytes()メソッドを使用する方法

int.from_bytes()メソッドは、バイト列を整数に変換する際に便利です。

このメソッドを使用すると、バイト列を指定されたエンディアン形式で整数に変換することができます。

以下に、サンプルコードを示します。

# バイト列の作成
byte_array = b'\x00\x0f'

# リトルエンディアン形式でバイト列を整数に変換
result = int.from_bytes(byte_array, byteorder='little')

print(result)  # 出力結果: 3840
3840

上記のコードでは、b'\x00\x0f'というバイト列をリトルエンディアン形式で整数に変換しています。

3840という結果が出力されます。

structモジュールを使用する方法

structモジュールを使用すると、バイト列を構造化データとして扱うことができます。

具体的には、struct.unpack()関数を使用してバイト列を指定したフォーマットに従って解釈し、数値に変換することができます。

以下に、サンプルコードを示します。

import struct

# バイト列の作成
byte_array = b'\x00\x0f'

# バイト列をunsigned shortとして解釈し、数値に変換
result = struct.unpack('<H', byte_array)[0]

print(result)  # 出力結果: 3840
3840

上記のコードでは、b'\x00\x0f'というバイト列をunsigned shortとして解釈し、3840という結果が出力されます。

structモジュールを使用することで、さまざまなフォーマットに従ってバイト列を数値に変換することができます。

これらの方法を使うことで、Pythonで簡単にバイト列を数値に変換することができます。

目次から探す