当我们使用load()函数从文件里取出已保存的对象时。pickle知道怎样恢复这些对象到它们本来的格式。
dumps()函数运行和dump() 函数同样的序列化。代替接受流对象并将序列化后的数据保存到磁盘文件,这个函数简单的返回序列化的数据。 loads()函数运行和load() 函数一样的反序列化。代替接受一个流对象并去文件读取序列化后的数据,它接受包括序列化后的数据的str对象, 直接返回的对象。 cPickle是pickle得一个更快得C语言编译版本号。 pickle和cPickle相当于java的序列化和反序列化操作 #! /usr/local/env python # -*- coding=utf-8 -*- if __name__ == "__main__": import cPickle #序列化到文件 obj = 123,"abcdedf",["ac",123],{"key":"value","key1":"value1"} print obj #输出:(123, abcdedf, [ac, 123], {key1: value1, key: value}) #r 读写权限 r b 读写到二进制文件 f = open(r"d:a.txt","r ") cPickle.dump(obj,f) f.close() f = open(r"d:a.txt") print cPickle.load(f) #输出:(123, abcdedf, [ac, 123], {key1: value1, key: value}) #序列化到内存(字符串格式保存),然后对象能够以不论什么方式处理如通过网络传输 obj1 = cPickle.dumps(obj) print type(obj1) #输出:<type str> print obj1 #输出:python专用的存储格式 obj2 = cPickle.loads(obj1) print type(obj2) #输出:<type tuple> print obj2 #输出:(123, abcdedf, [ac, 123], {key1: value1, key: value})转载于:https://www.cnblogs.com/bhlsheji/p/5373576.html
相关资源:数据结构—成绩单生成器