Python3中的shelve提供了持久化字典对象

  和字典基本一个样,只不过数据保存在了文件中,没什么好说的,直接上代码

  注:

    1.打开文件后不要忘记关闭文件

    2.键只能是字符串,值可以是任何值

    3.shelve模块中依赖pickle模块哦(了解一下,shelve相当于对pickle又进行了一次封装)

import shelve

class Books:
def __init__(self, name):
self.book_name = name # 打开持久化字典文件,没有会创建新文件,使用上下文管理器,防止忘记关闭文件
with shelve.open("dict_file") as dict_db:
print(type(dict_db))
# 和字典的操作一样,只不过是将数据保存到了文件中
dict_db["name"] = "Jet"
dict_db["age"] = 18
dict_db["book"] = Books("追风筝的人") # 可以保存类的信息哦!
for k, v in dict_db.items():
print("键: %s 值: %s" % (k, v))

最新文章

  1. XML组成结构以及C#通过DTD验证规范性
  2. 判断js数据类型和clone
  3. javaWEB小练习:在数据库中查找相同的username和password
  4. nginx的安装与配置
  5. uva11992-Fast Matrix Operations(区间增值、改值)
  6. Mina入门:mina版之HelloWorld
  7. NYOJ353 3D dungeon 【BFS】
  8. c/c++和java达到swap不同功能
  9. MySQL 查询重复的数据,以及部分字段去重和完全去重
  10. this的四种绑定形式
  11. LeetCode 153. Find Minimum in Rotated Sorted Array (在旋转有序数组中找到最小值)
  12. IDEA XML注释与取消注释快捷键
  13. 快速实现兼容的js复制方式。有点非正规,通过非正规的排版实现。
  14. RN和IOS原生端交互
  15. C++设计模式——状态模式
  16. Collectors类中的静态工厂方法
  17. Shell脚本【扔一百次硬币】
  18. 【COCOS2DX-游戏开发之三一】之 坐标系(下) convertToNodeSpace和convertToWorldSpace
  19. 使用Webdriver刷博客文章评论
  20. 编译hbase-1.2.3源代码

热门文章

  1. 一文让你快速上手 Mockito 单元测试框架
  2. 50个SQL语句(MySQL版) 问题二
  3. Beta冲刺 —— 5.29
  4. 这才是你需要的最基础的.Net基础面试题(通俗易懂,最基础的.Net)2
  5. Java实现 LeetCode 740 删除与获得点数(递推 || 动态规划?打家劫舍Ⅳ)
  6. Java实现 LeetCode 559 N叉树的最大深度(遍历树,其实和便利二叉树一样,代码简短(●ˇ∀ˇ●))
  7. Java实现 蓝桥杯VIP 算法提高 超级玛丽
  8. Java中线程的操作状态
  9. 小师妹学JavaIO之:MappedByteBuffer多大的文件我都装得下
  10. 伪造随机的User-Agent