Pythonでは、bytes
とリスト
は非常に便利なデータ型です。これらを適切に使用することで、データの操作と処理が容易になります。以下に、Pythonでbytes
とリスト
を扱う基本的な方法をいくつか紹介します。
bytesの基本的な使い方
Pythonのbytes
型は、不変のシーケンス型で、0 <= x < 256 の範囲の整数を要素とします。以下に、bytes
の基本的な使い方を示します。
# bytesの自力入力
b'\x00\x01\x02\x03' # result: b'\x00\x01\x02\x03'
b'\x64\x65\x66\x67' # result: b'defg' # asciiコードに対応した文字が表示されている
# ファイルからbytesで読込
with open('filename.bin', 'rb') as fp:
all_bytes = fp.read()
# bytesの部分切出し
a = b'\x00\x01\x02\x03'
a[1:3] # listなのでlistと同じ要領でスライスが可能
# result: b'\x01\x02'
bytesと整数の変換
bytes
から整数へ、または整数からbytes
への変換も可能です。
# 整数をbytesへ変換
a = 255
a.to_bytes(2, 'little') # to_bytes(変換後のバイト数, エンディアン)
# result: b'\xff\x00'
# bytesから整数へ
a = 255
byts = a.to_bytes(2, 'little')
int.from_bytes(byts, 'little') # int.from_bytes(bytes, エンディアン)
# result: 255
bytesと16進表記文字列の変換
bytes
と16進表記文字列の間での変換も可能です。
# 16進表記文字列からbytesへ
bytes.fromhex('F1E2f3f4')
# bytesを16進表記文字列へ
by = bytes.fromhex('F1E2f3f4')
by.hex()
# result: 'f1e2f3f4'
bytesをリストに変換
bytes
をリストに変換する方法もあります。
import array
byte_data = b'PythonBytes'
converted_list = array.array('B', byte_data).tolist()
以上が、Pythonでbytes
とリスト
を扱う基本的な方法の一部です。これらの知識を活用して、Pythonプログラミングをより効率的に行いましょう。