python通过zlib实现压缩与解压字符串的方法


Posted in Python onNovember 19, 2014

本文实例讲述了python通过zlib实现压缩与解压字符串的方法。分享给大家供大家参考。具体实现方法如下:

使用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())

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python Web框架Flask中使用新浪SAE云存储实例
Feb 08 Python
Python格式化压缩后的JS文件的方法
Mar 05 Python
Python RuntimeError: thread.__init__() not called解决方法
Apr 28 Python
python实现class对象转换成json/字典的方法
Mar 11 Python
Python随机生成均匀分布在三角形内或者任意多边形内的点
Dec 14 Python
在PyCharm环境中使用Jupyter Notebook的两种方法总结
May 24 Python
浅谈Series和DataFrame中的sort_index方法
Jun 07 Python
通过selenium抓取某东的TT购买记录并分析趋势过程解析
Aug 15 Python
python 实现多维数组(array)排序
Feb 28 Python
Python Django view 两种return的实现方式
Mar 16 Python
自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码
Mar 30 Python
python多进程使用函数封装实例
May 02 Python
python判断字符串是否纯数字的方法
Nov 19 #Python
python使用any判断一个对象是否为空的方法
Nov 19 #Python
python编写暴力破解FTP密码小工具
Nov 19 #Python
用python读写excel的方法
Nov 18 #Python
kNN算法python实现和简单数字识别的方法
Nov 18 #Python
决策树的python实现方法
Nov 18 #Python
linux 下实现python多版本安装实践
Nov 18 #Python
You might like
php数组函数序列之prev() - 移动数组内部指针到上一个元素的位置,并返回该元素值
2011/10/31 PHP
PHP的5个安全措施小结
2012/07/17 PHP
Yii2隐藏frontend/web和backend/web的方法
2015/12/12 PHP
PHP魔术方法使用方法汇总
2016/02/14 PHP
PHP水印类,支持添加图片、文字、填充颜色区域的实现
2017/02/04 PHP
仅img元素创建后不添加到文档中会执行onload事件的解决方法
2011/07/31 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器(优化篇)
2013/06/28 Javascript
javaScript 动态访问JSon元素示例代码
2013/08/30 Javascript
JavaScript列表框listbox全选和反选的实现方法
2015/03/18 Javascript
jquery中map函数遍历数组用法实例
2015/05/18 Javascript
浅析jquery数组删除指定元素的方法:grep()
2016/05/19 Javascript
全面解析Bootstrap中scrollspy(滚动监听)的使用方法
2016/06/06 Javascript
require简单实现单页应用程序(SPA)
2016/07/12 Javascript
AngularJS延迟加载html template
2016/07/27 Javascript
js实现html table 行,列锁定的简单实例
2016/10/13 Javascript
AJAX和jQuery动态加载数据的实现方法
2016/12/05 Javascript
js Canvas绘制圆形时钟效果
2017/02/17 Javascript
基于JS递归函数细化认识及实用实例(推荐)
2017/08/07 Javascript
vue-cli构建项目使用 less的方法
2017/10/04 Javascript
vue多页面开发和打包正确处理方法
2018/04/20 Javascript
Makefile/cmake/node-gyp中区分判断不同平台的方法
2018/12/18 Javascript
使用Promise封装小程序wx.request的实现方法
2019/11/13 Javascript
JS实现音量控制拖动
2020/01/15 Javascript
Python不规范的日期字符串处理类
2014/06/10 Python
Python写的服务监控程序实例
2015/01/31 Python
Python NumPy库安装使用笔记
2015/05/18 Python
python过滤字符串中不属于指定集合中字符的类实例
2015/06/30 Python
Python开发中爬虫使用代理proxy抓取网页的方法示例
2017/09/26 Python
Python3简单实例计算同花的概率代码
2017/12/06 Python
python语言中with as的用法使用详解
2018/02/23 Python
python调用并链接MATLAB脚本详解
2019/07/05 Python
python查找特定名称文件并按序号、文件名分行打印输出的方法
2020/04/24 Python
HTML5 canvas画图并保存成图片的jcanvas插件
2014/01/17 HTML / CSS
体育节口号
2014/06/19 职场文书
党员评议思想汇报
2014/10/08 职场文书
毕业生自荐材料范文
2014/12/30 职场文书