使用zlib.compress可以壓縮字串。使用zlib.decompress可以解壓字串。如下
| 代碼如下 |
複製代碼 |
#coding=utf-8 import zlib s = "hello word, 00000000000000000000000000000000" print len(s) c = zlib.compress(s) print len(c) d = zlib.decompress(c) print d |
示範代碼2:
| 代碼如下 |
複製代碼 |
import zlib message = 'witch which has which witches wrist watch' compressed = zlib.compress(message) decompressed = zlib.decompress(compressed) print 'original:', repr(message) print 'compressed:', repr(compressed) print 'decompressed:', repr(decompressed) 輸出original: 'witch which has which witches wrist watch' compressed: 'xx9c+xcf,IxceP(xcfxc8x04x92x19x89xc5PV9H4x15xc8+xca,.Q(Ox04xf2x00D?x0fx89' decompressed: 'witch which has which witches wrist watch' |
如果我們要對字串進行解壓可以使用zlib.compressobj和zlib.decompressobj對檔案進行壓縮解壓哦,
| 代碼如下 |
複製代碼 |
def compress(infile, dst, level=9): infile = open(infile, 'rb') dst = open(dst, 'wb') compress = zlib.compressobj(level) data = infile.read(1024) while data: dst.write(compress.compress(data)) data = infile.read(1024) dst.write(compress.flush()) def decompress(infile, dst): infile = open(infile, 'rb') dst = open(dst, 'wb') decompress = zlib.decompressobj() data = infile.read(1024) while data: dst.write(decompress.decompress(data)) data = infile.read(1024) dst.write(decompress.flush()) |