风-fmgao

导航

Python模块之shelve

shelve是python的自带model。

可以直接通过import shelve来引用。

shelve类似于一个存储持久化对象的持久化字典,即字典文件。

使用方法也类似于字典。

 

保存对象至shelve文件中:

  1. import shelve  
  2.   
  3. wangzhe = dict(zip(['name','age'],['wangzhe',24]))  
  4. lijianguo = dict(zip(['name','age'],['lijianguo',25]))  
  5.   
  6. db = shelve.open('shelveDict')  #打开一个文件  
  7. db['wangzhe'] = wangzhe   #向文件中添加内容,添加方式与给字典添加键值对相同  
  8. db['lijianguo'] = lijianguo      
  9. db.close()   #关闭文件  


从文件中读取对象:

  1. import shelve  
  2. db = shelve.open('shelveDict')  #打开文件  
  3. print db['wangzhe']  #向从字典中获取键的方式一样读取内容  
  4. print db['lijianguo']  #结果为{'age': 25, 'name': 'lijianguo'}  
  5. db.close()  #关闭文件  

更新文件中的数据:

注意:如果key对应的value是一个列表,不能直接列表中元素wangzhe['name'] [1] = 'A'

  可以wangzhe['name']  = ['A',.......]

    1. import shelve  
    2. db = shelve.open('shelveDict')  #打开文件  
    3. wangzhe = db['wangzhe']     #从文件中读取之前存储的对象  
    4. wangzhe['name'] = 'wang zhe'   #直接对对象进行修改  
    5. db['wangzhe'] = wangzhe     #重新存储至字典文件对象中  
    6. print db['wangzhe']     #结果如下{'age': 24, 'name': 'wang zhe'}  
    7. db.close()   #关闭文件 

posted on 2018-05-23 19:55  风-fmgao  阅读(249)  评论(0编辑  收藏  举报