有关持久化的模块
marshal
和pickle
、cPickle
可以用来转换并存储python对象。该过程将对象转化为二进制数据集合。
dbhash/bsddb
, dbm
, gdbm
, dumbdbm
以及它们的”管理器”( anydbm
)只提供了字符串的永久性储存。
shelve
则既可以存储对象,也可以存储字符串。
marshal和pickle模块的区别
marshal
和pickle
模块的区别在于marshal
只能处理简单Python 对象(数字, 序列, 映射, 以及代码对象), 而pickle 还可以处理递归对象, 被不同地方多次引用的对象, 以及用户定义的类和实例。