在Python中提供了两个模块:cPickle和pickle来实现序列化,前者是由C语言编写的,效率比后者高很多,一般编写程序的时候,采取的方案是先导入cPickle模块,如果此模块不存在,再导入pickle模块
try :
import cPickle as pickle
except ImportError:
import pickle
pickle实现序列化主要使用的是dumps方法或dump方法。
d = dict(url='index.html',title='首页',content='首页')
#dumps方法可以将任意对象序列化成一个str,然后可以将
#这个str写入文件进行保存
serial = pickle.dumps(d)
print serial
#dump方法,可以将序列化后的对象直接写入文件
f = open(r 'e:serial.txt','wb')
pickle.dump(d,f)
f.close()
#pickle实现反序列化使用的是loads方法或load方法.
#使用load方法将文件直接反序列化为对象
f1 = open(r'e:serial.txt','r')
d = pickle.load(f1)
f1.close()
print(d)
#将字符串进行反序列化
d = pickle.loads(serial)
print d