Pythonでバイトを分割する方法


  1. 固定サイズで分割する方法:
def split_bytes_fixed_size(byte_string, size):
    return [byte_string[i:i+size] for i in range(0, len(byte_string), size)]
# 使用例
byte_string = b'abcdefghij'
split_result = split_bytes_fixed_size(byte_string, 3)
print(split_result)  # [b'abc', b'def', b'ghi', b'j']
  1. デリミタで分割する方法:
def split_bytes_by_delimiter(byte_string, delimiter):
    return byte_string.split(delimiter)
# 使用例
byte_string = b'Hello,World'
split_result = split_bytes_by_delimiter(byte_string, b',')
print(split_result)  # [b'Hello', b'World']
  1. 正規表現を使用して分割する方法:
import re
def split_bytes_by_regex(byte_string, pattern):
    return re.split(pattern, byte_string)
# 使用例
byte_string = b'apple123banana456cherry'
split_result = split_bytes_by_regex(byte_string, b'\d+')
print(split_result)  # [b'apple', b'banana', b'cherry']

これらはPythonでバイト列を分割するための一般的な方法のいくつかです。必要に応じて、これらの方法をカスタマイズして使用することができます。各メソッドの引数としてバイト列と分割の基準を指定し、結果をリストとして取得することができます。