python入门系列15―——shelve
2017-07-05 15:18
183 查看
欢迎前往我的个人博客
如果只需要一个简单的存储方案,我们可以使用shelve,高级的我们可以使用SQLite或者pySQLite。
shelve模块都是以键值对的形式保存数据,key必须为字符串,而值可以是python所支持的数据类型
获取一个shelve对象,没有会创建:
删除shelve对象中的某个键值对:
如果只需要一个简单的存储方案,我们可以使用shelve,高级的我们可以使用SQLite或者pySQLite。
shelve模块都是以键值对的形式保存数据,key必须为字符串,而值可以是python所支持的数据类型
获取一个shelve对象,没有会创建:
sh=shelve.open('Mydb.dat')插入数据:
import shelve sh=shelve.open('Mydb.dat') sh['a']=['a','b'] print sh['a']接下来看这个例子:
import shelve sh=shelve.open('Mydb.dat') sh['a']=['a','b'] sh['a'].append('c') print sh['a']存储的d到哪里去了呢?其实很简单,d没有写回,你把['a', 'b', 'c']存到了x,当你再次读取s['x']的时候,s['x']只是一个拷贝,而你没有将拷贝写回,所以当你再次读取s['x']的时候,它又从源中读取了一个拷贝,所以,你新修改的内容并不会出现在拷贝中,解决的办法就是,第一个是利用一个缓存的变量,如下所示
import shelve sh=shelve.open('Mydb.dat') sh['a']=['a','b'] tmp=sh['a'] tmp.append('c') sh['a']=tmp print sh['a']
删除shelve对象中的某个键值对:
del sh['a']遍历所有数据:
for item in sh.items(): print('键[{}] = 值[{}]'.format(item[0], sh[item[0]]))关闭shelve对象:
sh.close()
相关文章推荐
- python for maya 系列入门中文视频(52gfx.com出品)
- Python一天入门15:面向对象的编程2-类与对象的方法
- Python Twisted 学习系列4(转载stulife最棒的Twisted入门教程)
- Python Twisted 学习系列12(转载stulife最棒的Twisted入门教程)
- Python Twisted 学习系列11(转载stulife最棒的Twisted入门教程)
- Python入门的36个例子——15 默认参数
- Python入门笔记(15):对文件的操作(1)
- Python Twisted 学习系列1(转载stulife最棒的Twisted入门教程)
- 用Python和Pygame写游戏-从入门到精通(15)
- Python Twisted 学习系列21(转载stulife最棒的Twisted入门教程)
- python入门系列文章
- Python学习系列入门篇(二)
- Python入门系列:文件和目录操作
- Python Twisted 学习系列3(转载stulife最棒的Twisted入门教程)
- Python学习系列(一)(基础入门)
- python学习系列一:python快速入门
- Python学习系列入门篇(一)
- python入门好文章系列
- Python Twisted 学习系列8(转载stulife最棒的Twisted入门教程)
- Python Twisted 学习系列22(转载stulife最棒的Twisted入门教程)