python实现在pickling的时候压缩的方法


Posted in Python onSeptember 25, 2014

本文实例讲述了python实现在pickling的时候压缩的方法。分享给大家供大家参考。

具体方法如下:

import cPickle,gzip
def save(filename,*objects):
  fil1 = gzip.open(filename,'wb')
  for obj in objects:
    cPickle.dump(obj,fil1,protocol = 2)
    fil1.close()
def load(filename):
  fil1 = gzip.open(filename,'rb')
  while True:
    try:
      yield cPickle.load(fil1)
    except EOFError:
      break
  fil1.close()
  
  
data1 = ['abc',12,23]  #几个测试数据
data2 = {1:'aaa',"b":'dad'}
data3 = (1,2,4)
data = list([data1,data2,data3])
save('data.zip',data)

iter = load('data.zip')
for item in iter:
  for data in item:
    print data

本文实例测试环境为Python2.7.6

程序运行结果如下:

['abc', 12, 23]
{1: 'aaa', 'b': 'dad'}
(1, 2, 4)

在程序运行的同时会在同级目录下生成data.zip文件。

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

Python 相关文章推荐
python自动化测试之连接几组测试包实例
Sep 28 Python
详解python中 os._exit() 和 sys.exit(), exit(0)和exit(1) 的用法和区别
Jun 23 Python
解决Python安装后pip不能用的问题
Jun 12 Python
python+selenium打印当前页面的titl和url方法
Jun 22 Python
详解Python 切片语法
Jun 10 Python
在python中用print()输出多个格式化参数的方法
Jul 16 Python
Python学习笔记之Django创建第一个数据库模型的方法
Aug 07 Python
解决Jupyter Notebook使用parser.parse_args出现错误问题
Apr 20 Python
python 将列表里的字典元素合并为一个字典实例
Sep 01 Python
Python如何批量生成和调用变量
Nov 21 Python
PyCharm 解决找不到新打开项目的窗口问题
Jan 15 Python
python使用cPickle模块序列化实例
Sep 25 #Python
python使用marshal模块序列化实例
Sep 25 #Python
python中类的一些方法分析
Sep 25 #Python
python实现获取序列中最小的几个元素
Sep 25 #Python
python中bisect模块用法实例
Sep 25 #Python
python实现给字典添加条目的方法
Sep 25 #Python
python实现忽略大小写对字符串列表排序的方法
Sep 25 #Python
You might like
php提示Failed to write session data错误的解决方法
2014/12/17 PHP
php curl登陆qq后获取用户信息时证书错误
2015/02/03 PHP
分享php邮件管理器源码
2016/01/06 PHP
CI框架集成Smarty的方法分析
2016/05/17 PHP
yii gridview实现时间段筛选功能
2017/08/15 PHP
JavaScript 动态将数字金额转化为中文大写金额
2009/05/14 Javascript
javascript 一些用法小结
2009/09/11 Javascript
JavaScript高级程序设计阅读笔记(十六) javascript检测浏览器和操作系统-detect.js
2012/08/14 Javascript
A标签触发onclick事件而不跳转的多种解决方法
2013/06/27 Javascript
jquery dialog open后,服务器端控件失效的快速解决方法
2013/12/19 Javascript
JQuery插入DOM节点的方法
2015/06/11 Javascript
jQuery实现的指纹扫描效果实例(附演示与demo源码下载)
2016/01/26 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
2016/08/25 Javascript
Bootstrapvalidator校验、校验清除重置的实现代码(推荐)
2016/09/28 Javascript
JS实现仿PS的调色板效果完整实例
2016/12/21 Javascript
利用Node.js对文件进行重命名
2017/03/12 Javascript
微信小程序选择图片和放大预览图片功能
2017/11/02 Javascript
推荐10款扩展Web表单的JS插件
2017/12/25 Javascript
ES6顶层对象、global对象实例分析
2019/06/14 Javascript
Python构造自定义方法来美化字典结构输出的示例
2016/06/16 Python
Python实现动态加载模块、类、函数的方法分析
2017/07/18 Python
Python(Django)项目与Apache的管理交互的方法
2018/05/16 Python
Python selenium实现微博自动登录的示例代码
2018/05/16 Python
对Python多线程读写文件加锁的实例详解
2019/01/14 Python
Python实现查找字符串数组最长公共前缀示例
2019/03/27 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
英国玛莎百货美国官网:Marks & Spencer美国
2018/11/06 全球购物
Douglas意大利官网:购买香水和化妆品
2020/05/27 全球购物
澳大利亚领先的在线礼品网站:Gifts Australia
2020/08/15 全球购物
公证委托书大全
2014/04/04 职场文书
企业优秀团员事迹材料
2014/08/20 职场文书
承诺函范文
2015/01/21 职场文书
关爱留守儿童主题班会
2015/08/13 职场文书
基于Redis过期事件实现订单超时取消
2021/05/08 Redis
JS创建或填充任意长度数组的小技巧汇总
2021/10/24 Javascript
Hive导入csv文件示例
2022/06/25 数据库