Python模块-shelve模块

Posted Sch01aR#

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python模块-shelve模块相关的知识,希望对你有一定的参考价值。

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模块的主要内容,如果未能解决你的问题,请参考以下文章

Python标准库之shelve模块(序列化与反序列化)

python模块(shelve,xml,configparser,hashlib,logging)

python模块(shelve,xml,configparser,hashlib,logging)

python 模块之-shelve

python开发模块基础:序列化模块json,pickle,shelve

python shelve模块