本文主要是介绍2.4.2 Python存储之shelve,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
pickle模块只能处理一些不太复杂的数据,当处理复杂数据的时候再用 pickle就会显的很麻烦,于是就有了 shelve
shelve是Python标准库中的一个模块
写入数据:
>>> import shelve
>>> a = shelve.open ("D://shelve.txt") #打开文件
>>> a["name"] = "zhangsan" #开始写入
>>> a["age"] = 28
>>> a["url"] = "www.baidu.com"
>>> a["content"] = "This is test"
>>> a.close()
读取文件:
>>> b = shelve.open ("D://shelve.txt")
>>> name = b["name"]
>>> print name
zhangsan
>>> url = b["url"]
>>> print url
www.baidu.com
全部内容遍历:
>>> for k in b:
print k, b[k]
age 28
content This is test
name zhangsan
url www.baidu.com
读和写,都简化了。所建立的对象,就如同字典一样,可称之为类字典对象,所以,可以如同操作字典那样来操作它。
注意 :
>>> f = shelve.open("D://shelve.txt")
>>> f["name"]
'zhangsan'
>>> f["name"] = ["zhansgan"]
>>> f["name"]
['zhansgan']
>>> f["name"]. append ("lisi")
>>> f["name"]
['zhansgan']
当试图修改一个已有键的值时没有报错,但是并没有修改成功。
>>> f = shelve.open("D://shelve.txt", writeback=True )
>>> f["name"].append("lisi")
>>> f["name"]
['zhansgan', 'lisi']
遍历整个结果:
>>> f = shelve.open("D://shelve.txt")
>>> for k,v in f.items() :
print k,": ",v
zhangsan : ['zhangsan']
age : 28
content : This is test
name : ['zhansgan', 'lisi']
url : www.baidu.com
这篇关于2.4.2 Python存储之shelve的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!