python pickle 和 shelve模块的用法

yipeiwu_com7年前Python基础

1.pickle

   写: 以写方式打开一个文件描述符,调用pickle.dump把对象写进去

复制代码 代码如下:

    dn = {'baidu':'www.baidu.com','qq':'www.qq.com','360':'www.360.cn'}

    name = ['mayun','mahuateng','liyanhong']

    f = open(r'C:\a.txt','w')

    pickle.dump(dn,f)      ##写一个对象

    pickle.dump(name,f)  ##再写一个对象

    f.close() 

   读:以读的方式打开文件描述符,调用pickle.load加载对象

    f = open(r'C:\a.txt')

    pickle.load(f)             ##加载一个对象

    pickle.load(f)             ##加载另一个对象

    f.close()


2.shelve

   shelve模块比pickle模块简单,只有一个open函数,返回类似字典的对象,可读可写

复制代码 代码如下:

   f = shelve.open(r'C:\b.txt')

   f  ##返回空字典

   f['baidu'] = 'www.baidu.com'

   f['qq'] = 'www.qq.com'

   f['360'] = 'www.360.cn'

   f  ##返回字典

   f.close()

   f = shelve.open(r'C:\b.txt')

   f ##返回字典f

相关文章

Python_LDA实现方法详解

LDA(Latent Dirichlet allocation)模型是一种常用而用途广泛地概率主题模型。其实现一般通过Variational inference和Gibbs Sampin...

Python PyInstaller库基本使用方法分析

Python PyInstaller库基本使用方法分析

本文实例讲述了Python PyInstaller库基本使用方法。分享给大家供大家参考,具体如下: 概述 将.py源码转换成无需源代码的可执行文件 .py文件 -> PyIns...

基于Python实现大文件分割和命名脚本过程解析

日志文件分割、命名 工作中经常会收到测试同学、客户同学提供的日志文件,其中不乏几百M一G的也都有,毕竟压测一晚上产生的日志量还是很可观的,xDxD,因此不可避免的需要对日志进行分割,通...

HTML的form表单和django的form表单

HTML的form表单和django的form表单

django的表单系统,分2种 基于django.forms.Form的所有表单类的父类 基于django.forms.ModelForm,可以和模型类绑定的Form 直接用...

Python数据结构与算法之图的广度优先与深度优先搜索算法示例

本文实例讲述了Python数据结构与算法之图的广度优先与深度优先搜索算法。分享给大家供大家参考,具体如下: 根据维基百科的伪代码实现: 广度优先BFS: 使用队列,集合 标记初始结点已被...