Python模塊-shelve模塊
阿新 • • 發佈:2018-02-15
運行 .com 取數據 alt open 刪除 分享 生成 ack
shelve模塊也是用來序列化的,可以持久化任何pickle可支持的python數據格式,比pickle好用,也是python專屬,可以dump多次數據,也可以直接修改數據
序列化
# -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import shelve f = shelve.open(‘shelve_test‘) names = ["John", "Jack", "Jane"] info = {‘name‘:‘John‘,‘age‘:22} f[‘name‘] = names f[‘infos‘] = info f.close()
生成了三個文件
反序列化
# -*- coding:utf-8 -*- __author__ = "MuT6 Sch01aR" import shelve f = shelve.open(‘shelve_test‘) #獲取數據 print(list(f.keys())) #獲取key名 print(f.get(‘name‘)) #獲取key的值 print(f[‘infos‘]) #獲取key的值 print(list(f.items())) #獲取全部數據 #修改數據 f[‘name‘] = [‘a‘,‘b‘,‘c‘] print(f[‘name‘]) del f[‘infos‘] #刪除數據 f.close()
運行結果
Python模塊-shelve模塊