Python 3.14+compression.zstdфункция
compression.zstd.decompress()
сжатие в памяти
Распаковывает данные Zstandard за один вызов. Понимает несколько кадров подряд и склеивает их содержимое.
Синтаксис
compression.zstd.decompress(data, zstd_dict=None, options=None)
В отличие от ZstdDecompressor, распаковывает все кадры подряд, поэтому склейка compress(a) + compress(b) даёт a + b. Обрезанные данные — ZstdError, а не тихо неполный результат. Данные, сжатые со словарём, без того же zstd_dict не распаковать: ZstdError «Dictionary mismatch». Кадр с большим окном (window_log больше 27) требует options={DecompressionParameter.window_log_max: N}.
Примеры
# Python 3.14+
from compression import zstd # → ? нужна сборка CPython с libzstd
both = zstd.compress(b'one ') + zstd.compress(b'two')
print(zstd.decompress(both)) # → b'one two' — оба кадра
try:
zstd.decompress(both[:-3])
except zstd.ZstdError as e:
print(e) # → Compressed data ended before the end-of-stream marker was reached
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности