python pickle 和 shelve模块
2013-09-16 15:16 cmsd 阅读(485) 评论(0) 编辑 收藏 举报pickle和shelve模块都可以把python对象存储到文件中,下面来看看它们的用法吧
1.pickle
写: 以写方式打开一个文件描述符,调用pickle.dump把对象写进去
dn = {'baidu':'www.baidu.com','qq':'www.qq.com','360':'www.360.cn'}
name = ['mayun','mahuateng','liyanhong']
f = open(r'C:\a.txt','w')
pickle.dump(dn,f) ##写一个对象
pickle.dump(name,f) ##再写一个对象
f.close()
读:以读的方式打开文件描述符,调用pickle.load加载对象
f = open(r'C:\a.txt')
pickle.load(f) ##加载一个对象
pickle.load(f) ##加载另一个对象
f.close()
2.shelve
shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写
f = shelve.open(r'C:\b.txt')
f ##返回空字典
f['baidu'] = 'www.baidu.com'
f['qq'] = 'www.qq.com'
f['360'] = 'www.360.cn'
f ##返回字典
f.close()
f = shelve.open(r'C:\b.txt')
f ##返回字典f