shelve模块的加载:
import shelve
# 只有一个open函数返回类似字典的对象
f = shelve.open('shelve_text') # 加载
# 存入多个字典
f['info'] = {'name': 'zhangsan', 'age': '45'} # info 字典名 后面是字典具体内容
f['shop'] = {'book': '12$', 'clothes': '45$'}
d = {'good': '12', 'price': '12$'}
print(d.get('good', 'price')) # 如果第一个有则返回第一个内容的值,如果没有则返回第二个内容
print(d.get('name', 'price')) # 如果没有则返回第二个内容
print(d.get('name', '没有')) # 如果没有则返回第二个内容
要点:
- open() 只有一个open() 函数返回类似字典的对象
- 存入字典是f['dict_name'] ={dict}
- get() 注意如果第一个参数存在则返回第一个参数对应的内容,如果没有则返回第二个参数(注意是参数本身)
shelve数据获取:
import shelve
# 带r 和 不带r 其实差不多
# f = shelve.open(r'shelve_text') # r 保持原生字符
f = shelve.open('shelve_text')
data1 = f.get('info') # 通过字典名获取
print(data1)
data2 = f.get('name') # 直接获取具体的键的值是获取不到的
print(data2)
data3 = f.get('shop') # 通过字典名获取
print(data3)
要点:
- 数据获取通过get('dict_name')
- 直接获取键的对应的值,类似:f.get('key_name') 是获取不到的