欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python连载26-shelve模块

程序员文章站 2022-04-12 11:26:17
一、持久化 --shelve 持久化工具 (1)作用:类似字典,用kv对保存数据,存取方式类似于字典 (2)例子:通过一下案例创建了一个数据库,第二个程序我们读取了数据库 2.shelve特性 (1)注意:不支持多个应用并行写入,为了解决这个问题,open的时候可以使用writeback=True, ......

一、持久化 --shelve

持久化工具

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

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

 

#使用shelve创建文件并使用

import shelve

shv = shelve.open(r"shv.db")

shv["one"] = 1

shv["two"] = 2

shv.close()

Python连载26-shelve模块

shv = shelve.open(r"shv.db")

try:

    print(shv["one"])

    print(shv["three"])

except:

    print("打印three时出错了")

finally:

    shv.close()

 

Python连载26-shelve模块

2.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()

Python连载26-shelve模块

三、源码

d22_4_shelve_module.py

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

2.csdn:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换

 Python连载26-shelve模块

上一篇: 品酒师

下一篇: linux命令之sed