python序列/反序列

一.pickle模块
1.loads/dumps 以字符串的形式保存在内存
	obj={"aa":3,"bb":[1,4,5,]}
	s=pickle.dumps(obj)
	print s
	newobj=pickle.loads(s)
	print newobj

2.load/dump 以二进制形式保存到文件
	f=open("test1.dat","w+")
	pickle.dump(obj,f)
	f.flush()
	f.seek(0)
	newobj=pickle.load(f)
	print newobj
	f.close()

二.marshal模块
marshal和pickle的区别在于Marshal只能处理简单的Python对象

三.shelve模块
shelve模块允许对数据库文件进行并发的读访问,但不允许共享读/写访问。
shelve提供了字典式的文件对象访问功能
	obj={"aa":3,"bb":[1,4,5,]}
	data=shelve.open("testfile")
	data["obj"]=obj
	data.close()


你可能感兴趣的:(python序列/反序列)