Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python将二进制数据缓冲区拆分为特定大小的块,并将它们存储在变量中_Python - Fatal编程技术网

Python将二进制数据缓冲区拆分为特定大小的块,并将它们存储在变量中

Python将二进制数据缓冲区拆分为特定大小的块,并将它们存储在变量中,python,Python,我有以下代码: tag_and_data = bin_file_obj.read(chunk_size) 然后,我使用切片根据字节大小将其分为两个变量(标记的前16个字节,数据的其余所有字节),如下所示: tag, data = tag_and_data[16:], tag_and_data[:16] 我能用一行完成上面的工作吗?是否有任何内置方法(如split())根据字节大小对数据进行分段并将其解压为变量 我认为没有内置的解决方案,但您可以这样写: def decompose_tag_a

我有以下代码:

tag_and_data = bin_file_obj.read(chunk_size)
然后,我使用切片根据字节大小将其分为两个变量(标记的前16个字节,数据的其余所有字节),如下所示:

tag, data = tag_and_data[16:], tag_and_data[:16]

我能用一行完成上面的工作吗?是否有任何内置方法(如split())根据字节大小对数据进行分段并将其解压为变量

我认为没有内置的解决方案,但您可以这样写:

def decompose_tag_and_data(tag_and_data):
    return tag_and_data[16:], tag_and_data[:16]
然后像这样称呼它:

tag, data = decompose_tag_and_data(bin_file_obj.read(chunk_size))
有一个明显的扩展:

def decompose(data,index):
    return data[:index],data[index:]

但是以pythonesque的方式扩展它以支持多个索引是我无法理解的。

我认为没有内置的解决方案,但您可以这样写:

def decompose_tag_and_data(tag_and_data):
    return tag_and_data[16:], tag_and_data[:16]
然后像这样称呼它:

tag, data = decompose_tag_and_data(bin_file_obj.read(chunk_size))
有一个明显的扩展:

def decompose(data,index):
    return data[:index],data[index:]
但以pythonesque的方式扩展它以支持多个索引是我无法理解的