首页 > 解决方案 > python3中字节()的快速连接

问题描述

我在 python3 中有一个字节字符串数组(它是一个音频块)。我想从中制作一个大字节串。简单的实现有点慢。如何做得更好?

chunks = []
while not audio.ends():
  chunks.append( bytes(audio.next_buffer()) )
  do_some_chunk_processing()

all_audio=b''
for ch in chunks:
  all_audio += ch

如何更快地做到这一点?

标签: pythonlistbyte

解决方案


您可以尝试衡量的一种方法是使用bytes.join

all_audio = b''.join(chunks)

这可能会更快的原因是,它会预先传递块以找出all_audio需要多大的大小,一次分配完全正确的大小,然后一次性将其连接起来。

参考


推荐阅读