Python的shelve模块————高级序列化

本文深入讲解了Python中Shelve模块的使用方法,包括其与JSON和Pickle的区别,以及如何用Shelve模块进行数据持久化存储。通过示例代码展示了Shelve模块的基本操作,如打开文件、写入数据、读取数据等,并提到了使用Shelve模块时的一些注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

功能相同与 json 和 pickle  。但是读取要强于前两者

其实shelve这个模块就是一个open和字典的操作

 

import shelve

f = shelve.open('demo')        #此步会创建三个文件:demo.bak , demo.dat , demo.dir 三个文件都不可以进行手动修改.os系统只有一个文件demo.bb

#接下来的操作就如同 字典的操作
f['name'] = [1,2,[3,4],5]        #要求键必须是字符串类型。值是Python类型的数据,没有要求
print(f['name'])    #[1,2,[3,4],5]

#可以在加键值对
f['age'] = 17
print(f['age'])                #17


#注意:
# 他并不可以直接查看字典中的内容,如果想要查看字典中有什么内容,需要循环这个  句柄(字典)

 

注意有个坑:

如果文件回写的时候会出现回写不成功,只需要在open这个函数的参数部分 加上一个 writeback = True 就可以了

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值