首页 > 编程 > Python > 正文

Python shelve模块实现解析

2019-11-25 11:50:21
字体:
来源:转载
供稿:网友

一、持久化 --shelve

持久化工具

(1)作用:类似字典,用kv对保存数据,存取方式类似于字典

(2)例子:通过一下案例创建了一个数据库,第二个程序我们读取了数据库

#使用shelve创建文件并使用import shelveshv = shelve.open(r"shv.db")shv["one"] = 1shv["two"] = 2shv.close()

shv = shelve.open(r"shv.db")try:  print(shv["one"])  print(shv["three"])except:  print("打印three时出错了")finally:  shv.close()

二.shelve特性

(1)注意:不支持多个应用并行写入,为了解决这个问题,open的时候可以使用writeback=True,注意一点如果不传入这个参数我们后面对数据的更改只会在内存中进行更改,而不会写回数据库

(2)写回问题

shelve不会等待持久化对象进行任何更改

shv = shelve.open(r"shv.db",writeback=True)try:  shv["one"] = {"eind":1,"zwei":2,"drei":3}  one = shv["one"]  print(one)#这里就对 数据进行了更改,如果没有上面writeback=True,下面额语句就白写了  one["eind"] = 100  print(one)finally:  shv.close()

三、源码

d22_4_shelve_module.py

地址:https://github.com/ruigege66/Python_learning/blob/master/d22_4_shelve_module.py

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表