【Python入門】Pythonのbytearray関数とは?使い方と活用方法を徹底解説(Python 3.11)

Python

はじめに

Pythonはシンプルで強力なプログラミング言語であり、多くの場面で活用されています。その中で、バイナリデータを操作するための「bytearray」関数は非常に便利です。本記事では、Python 3.11における「bytearray」関数の使い方や応用例を初心者向けにわかりやすく解説します。

bytearray関数とは?

「bytearray」関数は、可変なバイト列を扱うための組み込み関数です。文字列やリストと似たような使い方ができますが、メモリ効率が良く、バイナリデータを柔軟に扱える点が特徴です。

bytearray関数の基本構文

bytearray([source[, encoding[, errors]]])

引数の説明

  • source:元となるデータ(整数、バイト列、文字列など)
  • encodingsourceが文字列の場合に使用するエンコーディング
  • errors:エンコーディングエラーの処理方法

bytearray関数の使用例

1. 空のbytearrayを作成

ba = bytearray()
print(ba)  # 出力: bytearray(b'')

2. 整数を指定してbytearrayを作成

ba = bytearray(5)
print(ba)  # 出力: bytearray(b'\\x00\\x00\\x00\\x00\\x00')

3. 文字列をbytearrayに変換

ba = bytearray("hello", "utf-8")
print(ba)  # 出力: bytearray(b'hello')

4. リストをbytearrayに変換

ba = bytearray([72, 101, 108, 108, 111])
print(ba)  # 出力: bytearray(b'Hello')

bytearray関数の応用例

1. bytearrayの値を変更

ba = bytearray(b"hello")
ba[0] = 72  # 'h' を 'H' に変更
print(ba)  # 出力: bytearray(b'Hello')

2. bytearrayのスライス

ba = bytearray(b"hello world")
print(ba[0:5])  # 出力: bytearray(b'hello')

3. bytearrayの結合

ba1 = bytearray(b"hello ")
ba2 = bytearray(b"world")
result = ba1 + ba2
print(result)  # 出力: bytearray(b'hello world')

4. ファイル操作に活用

with open("example.bin", "wb") as f:
    f.write(bytearray([65, 66, 67, 68]))  # ABCDをバイナリファイルに保存

with open("example.bin", "rb") as f:
    data = bytearray(f.read())
    print(data)  # 出力: bytearray(b'ABCD')

まとめ

本記事では、Pythonの「bytearray」関数について解説しました。

  • bytearrayは可変なバイト列を扱うための組み込み関数
  • 文字列、リスト、整数などから生成可能
  • 値の変更や結合、スライスが可能
  • ファイル操作にも活用できる

Pythonでバイナリデータを扱う際には、ぜひ「bytearray」関数を活用してみてください。