首页后端开发Pythonpython怎么实现对象持久,方法是什么

python怎么实现对象持久,方法是什么

时间2024-03-22 19:40:03发布访客分类Python浏览565
导读:这篇文章给大家分享的是“python怎么实现对象持久,方法是什么”,文中的讲解内容简单清晰,对大家认识和了解都有一定的帮助,对此感兴趣的朋友,接下来就跟随小编一起了解一下“python怎么实现对象持久,方法是什么”吧。...
这篇文章给大家分享的是“python怎么实现对象持久,方法是什么”,文中的讲解内容简单清晰,对大家认识和了解都有一定的帮助,对此感兴趣的朋友,接下来就跟随小编一起了解一下“python怎么实现对象持久,方法是什么”吧。


 

1、说明

pickle:任意python对象和字节串之间的序列化

dbm:实现一个可通过键访问的文件系统,以存储字符串

shelve:使用上述两个模块把python对象存储到一个文件中,即按键存储pickle处理后的对象并存储在dbm的文件中

2、实例

##pickle
##将对象序列化到文件
f1=open("pickle.db","wb+")
pickle.dump(p1,f1)##这里不能一步到位,即open("pickle.db","wb+"),会导致pickle在读取的时候抛出EOFError:Ranoutofinput
f1.close()

##将对象序列化为字符串
string=pickle.dumps(p1)

##从文件读取
f=open("pickle.db","rb")
p=pickle.load(f)
##从字符串读取
p_obj=pickle.loads(string)
##dbm
##存储
db=dbm.open("dbm","c")
db[k1]=v1
db.close()
##读取
db=dbm.open("dbm","c")
forkeyindb.keys():
print("key[%s]--%s"%(key,db[key]))
##shelve
importshelve
db=shelve.open("persondb")
##filename
forobjectin[p1,p2]:
db[object.name]=objectdb.close()
##必须关闭
##从db文件中读取
db=shelve.open("persondb")##db拥有和字典相同的方法,区别在于shelve需要打开和关闭操作
forkeyindb.keys():
print("fromdb[%s]"%db[key])

感谢各位的阅读,以上就是“python怎么实现对象持久,方法是什么”的内容了,通过以上内容的阐述,相信大家对python怎么实现对象持久,方法是什么已经有了进一步的了解,如果想要了解更多相关的内容,欢迎关注网络,网络将为大家推送更多相关知识点的文章。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: python怎么实现对象持久,方法是什么
本文地址: https://pptw.com/jishu/650835.html
Oracle数据库中修改字符集的方法有什么 Thinkphp5框架异常处理操作包括哪些

游客 回复需填写必要信息