Posted in Python onAugust 28, 2019
一、持久化 --shelve
持久化工具
(1)作用:类似字典,用kv对保存数据,存取方式类似于字典
(2)例子:通过一下案例创建了一个数据库,第二个程序我们读取了数据库
#使用shelve创建文件并使用 import shelve shv = shelve.open(r"shv.db") shv["one"] = 1 shv["two"] = 2 shv.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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。
Python shelve模块实现解析
- Author -
心悦君兮君不知-睿声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@