程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

Python连载26-shelve模块

发布于2019-08-05 18:39     阅读(1168)     评论(0)     点赞(2)     收藏(2)


一、持久化 --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()

 

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

三、源码

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.欢迎关注微信公众号:傅里叶变换

 



所属网站分类: 技术文章 > 博客

作者:乐天派

链接:https://www.pythonheidong.com/blog/article/6354/3861e33607b7d7318b60/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)