Рубрики
Без рубрики

Сжатие и архивирование данных

Автор оригинала: Doug Hellmann.

Хотя современные компьютерные системы имеют постоянно увеличивающуюся емкость хранения, объем производимых данных неуклонно растет. Алгоритмы сжатия без потерь частично компенсируют нехватку емкости за счет обмена времени, потраченного на сжатие или распаковку данных, на пространство, необходимое для их хранения. Python включает интерфейсы к наиболее популярным библиотекам сжатия, поэтому он может читать и записывать файлы взаимозаменяемо.

zlib и gzip открывают библиотеку GNU zip, а bz2 предоставляет доступ к более позднему формату bzip2. Оба формата работают с потоками данных, независимо от формата ввода, и предоставляют интерфейсы для прозрачного чтения и записи сжатых файлов. Используйте эти модули для сжатия одного файла или источника данных.

Стандартная библиотека также включает модули для управления форматами архивов для объединения нескольких файлов в один файл, которым можно управлять как единым целым. tarfile считывает и записывает формат ленточного архива Unix, старый стандарт, который все еще широко используется сегодня из-за его гибкости. zipfile работает с архивами на основе формата, популяризированного программой ПК PKZIP, первоначально использовавшейся в MS-DOS и Windows, но теперь также используемой на других платформах из-за простоты API и переносимости формата.

  • zlib – Сжатие zlib GNU
  • gzip – чтение и запись zip-файлов GNU
  • bz2 – bzip2 Сжатие
  • tarfile – Доступ к архиву Tar
  • zipfile – Доступ к ZIP-архиву