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

yipeiwu_com7年前Python基础

本文实例讲述了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程序设计的学习有所帮助。

相关文章

浅谈python3.6的tkinter运行问题

python3.6在运行tkinter时要选择 run as Python unit-test, 否则报错 ModuleNotFoundError: No module named 't...

Python实现将文本生成二维码的方法示例

本文实例讲述了Python实现将文本生成二维码的方法。分享给大家供大家参考,具体如下: #coding:utf-8 ''' Python生成二维码 v1.0 主要将文本生成二维码图片...

Python split() 函数拆分字符串将字符串转化为列的方法

函数:split() Python中有split()和os.path.split()两个函数,具体作用如下: split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字...

Python编程深度学习计算库之numpy

Python编程深度学习计算库之numpy

NumPy是python下的计算库,被非常广泛地应用,尤其是近来的深度学习的推广。在这篇文章中,将会介绍使用numpy进行一些最为基础的计算。 NumPy vs SciPy NumPy和...

Python创建模块及模块导入的方法

本文实例讲述了Python创建模块及模块导入的方法。分享给大家供大家参考。具体分析如下: python学习手册中写道: 定义模块,只要使用文本编辑器,把一些python代码输入到文本中,...