Python编程:shelve模块-持久化python数据

举报
彭世瑜 发表于 2021/08/14 00:43:09 2021/08/14
【摘要】 持久化任何python的数据格式,对pickle的一个封装 import shelve # 准备数据 class Test(object): def __init__(self, n): self.n = n t1 = Test(123) t2 =Test(456) info = {"name": "Jimi", "age": 23} names = ["Al...

持久化任何python的数据格式,对pickle的一个封装

import shelve

# 准备数据
class Test(object): def __init__(self, n): self.n = n

t1 = Test(123)
t2 =Test(456)

info = {"name": "Jimi", "age": 23}

names = ["Alex", "Tom", "Jack"]

# 写入
d = shelve.open("shelve")  # 打开一个文件

d["names"] = names  # 持久化列表
d["t1"] = t1  # 持久化类
d["t2"] = t2
d["info"] = info  #持久化字典

d.close()
# 读取
d = shelve.open("shelve")  # 打开一个文件

print(d.get("info"))
print(d.get("names"))
print(d.get("t1"))

d.close()

"""
{'age': 23, 'name': 'Jimi'}
['Alex', 'Tom', 'Jack']
<__main__.Test object at 0x00000000059577B8>
"""
  
 

文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。

原文链接:pengshiyu.blog.csdn.net/article/details/79008182

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。