1. 序列化操作
1.1 理解模块pickle/cPickle的优劣
import cPickle as pickle
my_data = {'name':'python','type':'language'}
with open('pickle.dat','wb') as fp:
pickle.dump(my_data,fp)
"""
pickle.dump(obj,file[,protocol]
protocol:0表示ascii协议;1,2为新老二进制协议
"""
with open('pickle.dat','rb') as fp:
print(pickle.load(fp))
优点:……
缺点:
1. pickle不能保证操作的原子性
2. 存在安全问题:pickle.loads("cos\nsystem\n(Sdir'\ntR)")
3. pickle协议是python特定的,不同语言之间兼容性难以保证