【Python】整数をbyte型に変換する

この記事では、Pythonで整数をバイト型に変換する方法を紹介します。

int.to_bytes()メソッドやstruct.pack()関数、bytearray()関数を使用することで、整数をバイト列に変換する手法を学ぶことができます。

目次から探す

Pythonで整数をbyte型に変換する方法

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

Pythonのintクラスには、to_bytes()メソッドが用意されており、整数をバイト型に変換する際に便利です。

このメソッドを使用すると、指定したバイト数で整数を表現することができます。

以下は、to_bytes()メソッドを使用して整数をバイト型に変換するサンプルコードです。

num = 255
num_bytes = num.to_bytes(2, byteorder='big')
print(num_bytes)
b'\x00\xff'

このコードでは、numという整数を2バイトのバイト型に変換しています。

byteorderパラメータを使用することで、エンディアン(バイトオーダー)を指定することができます。

struct.pack()関数を使用する方法

Pythonのstructモジュールには、バイナリデータをパックするためのpack()関数があります。

この関数を使用すると、整数をバイト型に変換することができます。

以下は、struct.pack()関数を使用して整数をバイト型に変換するサンプルコードです。

import struct

num = 65535
num_bytes = struct.pack('>H', num)
print(num_bytes)
b'\xff\xff'

このコードでは、numという整数を2バイトの符号なしショート整数型(>H)のバイト型に変換しています。

bytearray()関数を使用する方法

Pythonのbytearray()関数を使用すると、整数をバイト型に変換することができます。

bytearray()関数は、指定した整数をバイト列として表現します。

以下は、bytearray()関数を使用して整数をバイト型に変換するサンプルコードです。

num = 123
num_bytes = bytearray([num])
print(num_bytes)
bytearray(b'{')

このコードでは、numという整数を1バイトのバイト型に変換しています。

bytearray()関数にリスト形式で整数を渡すことで、バイト型に変換されます。

目次から探す