Pythonのbytearray
とスライス操作は、データ操作において非常に重要な概念です。特に、bytearray
は可変であり、bytes
とbytearray
の操作に加えて、mutableシーケンス操作もサポートしています。
スライス操作の基本
シーケンス(リスト、文字列、タプル、バイト列)の一部分を切り取ってコピーを返す仕組みを、スライスと呼びます。通常、シーケンスへのアクセスは、以下のようにインデクスを指定して、その要素を取得する形で行います。
s = 'Python'
s[3] # 'h'
スライスでは、以下のように、始点と終点のインデクスを、コロンを挟む形で指定します。
s = 'Python'
s[2:5] # 'tho'
bytearrayとスライス操作
bytearray
は、bytes
と同様にスライス操作をサポートしていますが、bytearray
は可変であるため、スライス結果を直接変更することが可能です。
ba = bytearray(b'Hello, world!')
ba[7:12] = b'Python'
print(ba) # bytearray(b'Hello, Python!')
このように、Pythonのbytearray
とスライス操作は、データ操作の強力なツールとなります。これらの概念を理解し、適切に使用することで、Pythonプログラミングの幅が広がります。