Python模块之shelve
shelve是python的自带model。
可以直接通过import shelve来引用。
shelve类似于一个存储持久化对象的持久化字典,即字典文件。
使用方法也类似于字典。
保存对象至shelve文件中:
- import shelve
- wangzhe = dict(zip(['name','age'],['wangzhe',24]))
- lijianguo = dict(zip(['name','age'],['lijianguo',25]))
- db = shelve.open('shelveDict') #打开一个文件
- db['wangzhe'] = wangzhe #向文件中添加内容,添加方式与给字典添加键值对相同
- db['lijianguo'] = lijianguo
- db.close() #关闭文件
从文件中读取对象:
- import shelve
- db = shelve.open('shelveDict') #打开文件
- print db['wangzhe'] #向从字典中获取键的方式一样读取内容
- print db['lijianguo'] #结果为{'age': 25, 'name': 'lijianguo'}
- db.close() #关闭文件
更新文件中的数据:
注意:如果key对应的value是一个列表,不能直接列表中元素wangzhe['name'] [1] = 'A'
可以wangzhe['name'] = ['A',.......]
- import shelve
- db = shelve.open('shelveDict') #打开文件
- wangzhe = db['wangzhe'] #从文件中读取之前存储的对象
- wangzhe['name'] = 'wang zhe' #直接对对象进行修改
- db['wangzhe'] = wangzhe #重新存储至字典文件对象中
- print db['wangzhe'] #结果如下{'age': 24, 'name': 'wang zhe'}
- db.close() #关闭文件
Python模块之shelve的更多相关文章
- python 模块之-shelve
shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写;key必须为字符串,而值可以是python所支持的数据类型 import shelve f = shelve ...
- python模块之shelve,xml,hashlib,configpaser
shelve shelve模块也是一种可以将数据序列化的模块 使用方法 1. open 2. 读写 3. close 特点:使用方法比较简单 提供一个文件名字就可以开始读写,读写的方法和字典一致;跨平 ...
- python模块:shelve
shelve 1)模块功能:以 key - value 的方式存储数据. 2)写数据 >>> import shelve >>> db = shelve.open( ...
- python模块--pickle&json&shelve
使用file文件处理时,写入的必须是str ,否则会报错. 例如:要把一个字典写入文件,写入时会报错 ,就算转换成str格式写入,读取的时候也不能按照dict格式读. >>> inf ...
- python模块-json、pickle、shelve
json模块 用于文件处理时其他数据类型与js字符串之间转换.在将其他数据类型转换为js字符串时(dump方法),首先将前者内部所有的单引号变为双引号,再整体加上引号(单或双)转换为js字符串:再使用 ...
- python常用模块之shelve模块
python常用模块之shelve模块 shelve模块是一个简单的k,v将内存中的数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据类型 我们在上面讲json.pickle ...
- Python模块 shelve xml configparser hashlib
常用模块1. shelve 一个字典对象模块 自动序列化2.xml 是一个文件格式 写配置文件或数据交换 <a name="hades">123</a>3. ...
- Python模块:shutil、序列化(json&pickle&shelve)、xml
shutil模块: 高级的 文件.文件夹.压缩包 处理模块 shutil.copyfileobj(fscr,fdst [, length]) # 将文件内容拷贝到另一个文件中 import shu ...
- Python之路【第八篇】:Python模块
阅读目录 一.模块和包 模块(module)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到 ...
随机推荐
- Ubuntu python-opcua Test
/********************************************************************************* * Ubuntu python-o ...
- word-如何将文字设置为插入超链接
前言 使用word有时候想要将文字部分设置为插入超链接,本文对此进行介绍. 操作步骤 1. 输入需要插入链接的文字部分: 2. 选中文字部分单击右键,点击超链接进行插入: 具体操作如下图所示: 参考 ...
- [LeetCode&Python] Problem 804. Unique Morse Code Words
International Morse Code defines a standard encoding where each letter is mapped to a series of dots ...
- BZOJ4310: 跳蚤 【后缀数组+二分】
Description 很久很久以前,森林里住着一群跳蚤.一天,跳蚤国王得到了一个神秘的字符串,它想进行研究.首先,他会把串 分成不超过 k 个子串,然后对于每个子串 S,他会从S的所有子串中选择字典 ...
- android 自动拨打电话 挂断电话代码
页面布局文件代码 ( res下面的layout下面的activity_main.xml代码 ) <RelativeLayout xmlns:android="http://sche ...
- 自制数据结构(容器)-java开发用的最多的ArrayList和HashMap
public class MyArrayList<E> { private int capacity = 10; private int size = 0; private E[] val ...
- hasura graphql-engine v1.0.0-alpha25 的几个方便功能
hasura graphql-engine 是一个很不错的graphql 引擎,但是我们的数据模型经常可能会有变动, 但是以前的版本对于这些的处理,官方的方式是删除元数据,重启server,都不是很好 ...
- vulcanjs 开源工具方便快速开发react graphql meteor 应用
vulcan 开源工具方便快速开发react graphql meteor 应用 操作环境mac os 安装 meteor 安装(此安装有点慢,可以通过正确上网解决) curl https://ins ...
- IBM DS存储存储性能调优
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/jaminwm/article/details/26458791 ibm存储适用,其它存储有相似參数. ...
- cmd下查看当前登陆用户
cmd下查看当前登陆用户 终端下,自然可以用quser这个命令了.但是在其它如专业版2k下如何查看在线用户呢? C:\Documents and Settings\Administrator>n ...