python实现数据的压缩与归档
楔子 尽管现代计算机系统的存储能力日益增长,但生成数据的增长是永无休止的。 无损(lossless)压缩算法以压缩或解压缩数据花费的时间来换取存储数据所需要的空间,以弥补存储能力的不足。 Python为最流行的一些压缩库提供了接口,从而能使用不同压缩库读写文件。 zlib和gzip提供了GNU zip库,另外bz2允许访问更新的bzip2格式。这些格式都处理数据流而不考虑输入格式,并且提供的接口可以透明地读写压缩文件。可以使用这些模块来压缩单个文件或者数据源标准库还包括一些模块来管理归档(archive)格式,能够将多个文件合并到一个文件,该文件可以作为一个单元来管理。tarfile读写unix磁带归档格式,这是一种老标准,但由于其灵活性,当前仍得到广泛使用。zipfile根据zip格式来处理归档,这种格式因pc程序pkzip得以普及,原先在MS-DOS和Windows下使用,不过由于其API的简单性以及这种格式的可移植性,现在也用于其他平台 zlib:GNU zlib压缩 介绍 zlib模块为GNU项目zlib压缩库中的很多函数提供了底层接口 处理内存中的数据 import zlib import binascii ''' 使用zlib最简单的方法要求把所有将要压缩或解压缩的数据放到内存中 ''' original_data = b"this is a original text