python3--shelve 模块
shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式
import shelve d = shelve.open('shelve_test') #打开一个文件 class Test(object): def __init__(self,n): self.n = n t = Test(123) t2 = Test(123334) name = ["alex","rain","test"] d["test"] = name #持久化列表 d["t1"] = t #持久化类 d["t2"] = t2 d.close()
反序列化
d1 = shelve.open("shelve.txt") print(d1["test"]) dd1 = d1["t1"] print(dd1) print(dd1.n) dd2 = d1["t2"] print(dd2) print(dd2.n)
结果:
['alex', 'rain', 'golf'] <__main__.Test object at 0x000000000295E5C0> 123 <__main__.Test object at 0x000000000295E588> 456789