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程序设计的学习有所帮助。

相关文章

Python+pyplot绘制带文本标注的柱状图方法

Python+pyplot绘制带文本标注的柱状图方法

如下所示: import numpy as np import matplotlib.pyplot as plt # 生成测试数据 x = np.linspace(0, 10,...

Python使用Pickle模块进行数据保存和读取的讲解

pickle 是一个 python 中, 压缩/保存/提取 文件的模块,字典和列表都是能被保存的. 但必须注意的是python2以ASCII形式保存,而在python3中pickle是使...

Python3简单实现串口通信的方法

如下所示: import serial import sys import os import time import re def wait_for_cmd_OK(): &nb...

在Pycharm中设置默认自动换行的方法

如下所示: 只对当前文件有效的操作: 菜单栏->View -> Active Editor -> Use Soft Wraps; 如果想对所有文件都有效,就要在sett...

Python3使用turtle绘制超立方体图形示例

Python3使用turtle绘制超立方体图形示例

本文实例讲述了Python3使用turtle绘制超立方体图形。分享给大家供大家参考,具体如下: 利用Python3中turtle的绘制超立方体。 绘图思路: 1)求出边长100的超立方...