序列化shelve模块
import shelve set1 = {'a', 'b', 'c', 'd'} f1 = shelve.open("sh_file.txt") f1['key'] = set1
f1.close() f2 = shelve.open("sh_file.txt") print(f2['key'])
f2.close()
借助参数writeback shelve模块可以将我们对被序列化的类型 的改动 及时感知并记录下来
import shelve lst = ['a', 'b', 'c', 'e'] lst[3] = 'd' # 列表的末尾元素被修改 print(lst) f1 = shelve.open("sh_file.txt") f1['key'] = lst f1.close() f2 = shelve.open("sh_file.txt", writeback=True) # 默认参数 writeback=False print(f2['key']) f2['key'][3] = 'f' # 列表的末尾元素被修改 且因参数 writeback=True 改修改可被及时写回文件 f2.close() f3 = shelve.open("sh_file.txt") print(f3['key']) f2.close()