все Python 3bz2функция
bz2.decompress()
сжатие в памяти
Распаковывает данные bzip2 за один вызов и возвращает исходные байты. Понимает несколько склеенных потоков.
Синтаксис
data = bz2.decompress(data)
Повреждённые или не-bzip2 данные дают OSError('Invalid data stream'), а не ValueError — ловить надо его. Результат — bytes, текст получают .decode(). Объём распакованного не ограничен: недоверенный вход лучше распаковывать BZ2Decompressor с max_length, иначе маленький архив может занять гигабайты памяти.
Примеры
import bz2
print(bz2.decompress(bz2.compress(b'one ') + bz2.compress(b'two'))) # → b'one two'
try:
bz2.decompress(b'not bzip2')
except OSError as e:
print(e) # → Invalid data stream
См. также
Частые ошибки
Открыть в полном глоссарииdocs.python.orgСообщить о неточности