python zlib字串壓縮
阿新 • • 發佈:2019-01-10
在做網路程式時,可以對字串進行壓縮來節省頻寬
專案中用到 {"compress": <壓縮標記>, "result":[[裝置型別.裝置ID, 裝置名稱, 單位ID, 裝置功能], ...]}
只做了簡單的壓縮解壓縮,也沒crc32(迴圈冗餘校驗)
01 |
# -*- coding: utf-8 -*- |
02 |
03 |
"""和zipfile不同的是, zlib多用於網路收發字串的壓縮與解壓""" |
04 |
import zlib |
05 |
06 |
raw_data =
"hello,world,ooooooooooooxxxxxxxxxxx" |
07 |
zb_data =
zlib.compress(raw_data) |
08 |
09 |
print "len(raw_data)=%d, len(zb_data)=%d, compression ratio=%.2f" \ |
10 |
%
( len (raw_data),
len (zb_data), float ( len (zb_data)) / len (raw_data)) |
11 |
12 |
# len(raw_data)=35, len(zb_data)=25, compression ratio=0.71 |
13 |
raw_data2 =
zlib.decompress(zb_data) |
14 |
print raw_data2 |