Python Glossary English

Python 3.2+gzipфункция

gzip.decompress()

сжатие в памяти

Распаковывает байты в формате gzip целиком в памяти; склеенные gzip-потоки возвращает одной строкой байт.

Синтаксис

gzip.decompress(data)

Несколько gzip-потоков подряд распаковываются в общий результат — так работают дописанные .gz-логи. Ошибки разные по смыслу: чужие данные — gzip.BadGzipFile, обрезанный поток — EOFError, а не BadGzipFile, поэтому ловить надо оба. Данные формата zlib (из zlib.compress) не подходят: для них zlib.decompress.

Примеры

import gzip
both = gzip.compress(b'ab', mtime=0) + gzip.compress(b'cd', mtime=0)
print(gzip.decompress(both))  # → b'abcd'
try:
    gzip.decompress(gzip.compress(b'abcdef', mtime=0)[:-3])
except EOFError:
    print('обрезано')  # → обрезано

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности