python - 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
如何更快地做到这一点?
解决方案
您可以尝试衡量的一种方法是使用bytes.join
:
all_audio = b''.join(chunks)
这可能会更快的原因是,它会预先传递块以找出all_audio
需要多大的大小,一次分配完全正确的大小,然后一次性将其连接起来。
推荐阅读
- string - IF 条件对字符串比较的评估错误
- php - 如何用php打印票?
- python - 如何使用 GUI 小部件通过子进程的 Popen 捕获 input() 请求并将其返回以继续该过程,重复直到结束?
- javascript - IntersectionObserver 有时会在不同亮度的部分上使用固定标题错过检测
- jquery - Jquery,根据条件更改字段值 - NaN
- c# - 如何使用令牌调用授权的 API 方法?
- c# - 如何在 void 方法中使用异步
- python - Keras:图像字幕网络输出恒定的字幕
- ssl - 为什么 Web 服务器对 SSL 使用反向代理?
- python - 我可以通过python从十六进制表(memmap)中提取一些数据吗?