Как работать с большими строками/байтами без лишних копий и перерасхода памяти?
Не конкатенируйте по одному кусочку; для строк используйте ''.join(...)/io.StringIO, для байтов — bytearray/io.BytesIO/memoryview (срезы без копий). Стримьте по чанкам, для файлов подойдёт mmap. Помните: срез bytes копирует, memoryview — нет.
Библиотека собеса по Python
Post #1277
933
- 👍 3
- ❤ 1