python中cPickle

在python中,一般可以使用pickle类来进行python对象的序列化,而cPickle提供了一个更快速简单的接口,如python文档所说的:“cPickle -- A faster pickle”。

cPickle可以对任意一种类型的python对象进行序列化操作,比如list,dict,甚至是一个类的对象等。而所谓的序列化,我的粗浅的理解就是为了能够完整的保存并能够完全可逆的恢复。在cPickle中,主要有四个函数可以做这一工作,下面使用例子来介绍。

1, dump: 将python对象序列化保存到本地的文件。

代码如下:

>>> import cPickle

>>> data = range(1000)

>>> cPickle.dump(data,open("test\\data.pkl","wb"))

dump函数需要指定两个参数,第一个是需要序列化的python对象名称,第二个是本地的文件,需要注意的是,在这里需要使用open函数打开一个文件,并指定“写”操作。

2. load:载入本地文件,恢复python对象

代码如下:

>>> data = cPickle.load(open("test\\data.pkl","rb"))

同dump一样,这里需要使用open函数打开本地的一个文件,并指定“读”操作

3. dumps:将python对象序列化保存到一个字符串变量中。

代码如下:

>>> data_string = cPickle.dumps(data)

4. loads:从字符串变量中载入python对象

代码如下:

>>> data = cPickle.loads(data_string)

时间: 2024-07-31 08:22:21

python中cPickle的相关文章

python 中cPickle学习二

写入: import cPickle as p shoplistfile = 'data.data' shoplist = ['meili',['current_account',[100000,1222],'basis_account',[5555555,888]], 'qinshan',['current_account',[1089000,12292],'basis_account',[55555955,888]], 'jiayou',['current_account',[10000,1

python 中exception,class学习

python 中exception,class 学习 instroduction: Object2 = Object1 ( like java) if Object1 is class object , then copy by reference; if Object1 is basic type, then copy by value 1. exception 主要结构: try: exception ValueError: exception ZeroDivisionError: exce

python模块--cPickle

在python中,一般可以使用pickle类来进行python对象的序列化,而cPickle提供了一个更快速简单的接口,如python文档所说的:“cPickle -- A faster pickle”. cPickle可以对任意一种类型的python对象进行序列化操作,比如list,dict,甚至是一个类的对象等.而所谓的序列化,我的粗浅的理解就是为了能够完整的保存并能够完全可逆的恢复.在cPickle中,主要有四个函数可以做这一工作,下面使用例子来介绍. 1. dump: 将python对象

Python 之 cPickle 实现 文件存取

计算机的内存中存储的是二进制的序列 (当然,在Linux眼中,是文本流).我们可以直接将某个对象所对应位置的数据抓取下来,转换成文本流 (这个过程叫做serialize),然后将文本流存入到文件中.由于Python在创建对象时,要参考对象的类定义,所以当我们从文本中读取对象时,必须在手边要有该对象的类定义,才能懂得如何去重建这一对象.从文件读取时,对于Python的内建(built-in)对象 (比如说整数.词典.表等等),由于其类定义已经载入内存,所以不需要我们再在程序中定义类.但对于用户自行

python 中的字符串转义序列、字符串格式化、操作符、关键字总结

1.字符串转义序列 转义字符 描述 \(在行尾时) 续行符 \\ 反斜杠符号 \' 单引号 \" 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \t 横向制表符 \r 回车 \f 换页 \oyy 八进制数yy代表的字符,例如:\o12代表换行 \xyy 十进制数yy代表的字符,例如:\x0a代表换行 \other 其它的字符以普通格式输出 2.字符串格式化 3.操作符 一.算术运算符 注意: 双斜杠 // 除法总是向下取整. 从符点

Python中使用pickle持久化对象

Python中可以使用 pickle 模块将对象转化为文件保存在磁盘上,在需要的时候再读取并还原.具体用法如下: 1 pickle.dump(obj, file[, protocol]) 这是将对象持久化的方法,参数的含义分别为:obj: 要持久化保存的对象:file: 一个拥有 write() 方法的对象,并且这个 write() 方法能接收一个字符串作为参数.这个对象可以是一个以写模式打开的文件对象或者一个 StringIO 对象,或者其他自定义的满足条件的对象.protocol: 这是一个

走入计算机的第四十天(python中sockserver模块)

一.Python中的sockserver模块 1.该模块与sock模块不同之处是该模块自动帮我们分装好了一些功能,让我们在编程的时候直接调用这些功能就可以了,节省了编程步骤. 2.如图所示 注释:上图为服务端设置 该模块的操作方法比较死板,我们只要会熟悉的使用他就可以了.

python中if __name__ == '__main__':

Using a module's __name__ Example? 8.2.? Using a module's __name__ #!/usr/bin/python # Filename: using_name.py if __name__ == '__main__': print 'This program is being run by itself' else: print 'I am being imported from another module' Output $ pytho

关于Python中的yield

关于Python中的yield http://www.cnblogs.com/tqsummer/archive/2010/12/27/1917927.html http://www.ibm.com/developerworks/cn/opensource/os-cn-python-yield/ 一.迭代器(iterator) 在Python中,for循环可以用于Python中的任何类型,包括列表.元祖等等,实际上,for循环可用于任何“可迭代对象”,这其实就是迭代器 迭代器是一个实现了迭代器协议