当前位置:首页 > 编程教程 > Python技术文章 > python3 shelve模块的详解

python3 shelve模块的实例用法讲解

  • 发布时间:
  • 作者:码农之家
  • 点击:193

这篇文章主要知识点是关于python3、shelve、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

Python3面向对象编程
  • 类型:Python3大小:10.1 MB格式:PDF作者:Dusty Phillips
立即下载

python3 shelve模块的详解

python3 shelve模块的详解

一、简介

  在python3中我们使用json或者pickle持久化数据,能dump多次,但只能load一次,因为先前的数据已经被后面dump的数据覆盖掉了。如果我们想要实现dump和load多次,可以使用shelve模块。shelve模块可以持久化所有pickle所支持的数据类型。

二、持久化数据

1、数据持久化

import shelve
import datetime
 
info = {'name': 'bigberg', 'age': 22}
name = ['Apoll', 'Zous', 'Luna']
t = datetime.datetime.now()
 
with shelve.open('shelve.txt') as f:
  f['name'] = name  # 持久化列表
  f['info'] = info     # 持久化字典
  f['time'] = t      # 持久化时间类型
  

执行代码后会生成3个文件:shelve.txt.bak、shelve.txt.dat、shelve.txt.dir。

shelve.txt.bak 的内容

'info', (512, 45)
'name', (0, 42)
'time', (1024, 44)

shelve.txt.dat  

�]q (X  ApollqX  ZousqX  Lunaqe.                                                                                                                                                                                                                                           �}q (X  ageqKX  nameqX  bigbergqu.                                                                                                                                                                                                                                          �cdatetime
datetime
q C
�"
2�q�qRq.

shelve.txt.dir 的内容

'info', (512, 45)
'name', (0, 42)
'time', (1024, 44)

2、数据读取

我们使用get来获取数据

import shelve
 
with shelve.open('shelve.txt') as f:
  n = f.get('name')
  i = f.get('info')
  now = f.get('time')
 
print(n)
print(i)
print(now)
 
#输出
 
['Apoll', 'Zous', 'Luna']
{'age': 22, 'name': 'bigberg'}
2017-07-08 11:07:34.865022
 

1、shelve模块是一个简单的key,value将内存数据通过文件持久化的模块。

2、shelve模块可以持久化任何pickle可支持的python数据格式。

3、shelve就是pickle模块的一个封装。

4、shelve模块是可以多次dump和load。

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

您可能感兴趣的文章:

  • Python3 Post登录并且保存cookie登录其他页面的操作步骤
  • 如下所示: import urllib.requestimport sysimport http.cookiejarimport urllib.parsefrom bs4 import BeautifulSoupimport codecsimport re#登录页面url = http://www.abc.com/login.asp#登录Post数据postdata =urllib.parse.urlencode({ username:abc,password:abc }).encode(utf-8)#构造headerheader = { Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8, Accept-Encoding:utf-8, Accept-Language:zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3, Connection:keep-alive, Host:www.abc.com, Referer:……

  • Python3实现取图片中特定的像素替换指定的颜色方法
  • 本文实例讲述了Python3实现取图片中特定的像素替换指定的颜色。分享给大家供大家参考,具体如下: 1、原始图片 2、修改脚本: # -*- coding:utf-8 -*-#! python3from PIL import Imagei = 1j = 1img = Image.open(e:/pic/222.jpg)#读取系统的内照片print (img.size)#打印图片大小print (img.getpixel((4,4)))width = img.size[0]#长度height = img.size[1]#宽度for i in range(0,width):#遍历所有长度的点 for j in range(0,height):#遍历所有宽度的……

  • windows10安装python3.5 pip3图文详解
  • 这次给大家带来在windows10里python3.5 pip3应该如何安装,在windows10里python3.5 pip3安装的注意事项有哪些,下面就是实战案例,一起来看一下。 最近Google官方的开发者博客中宣布新的版本Tensorflow(0.12)将增加对Windows的支持,想试着windows10下学习tensorflow,之前已经安装anaconda2(python2.7),怕安装python3.5会冲突,但还是想试一下,最终成功。 下载地址:官网地址 这是我下载的当前 pyt……

  • python3使用matplotlib绘制散点图实例详解
  • 本文实例为大家分享了python3使用matplotlib绘制散点图,并标注图例,轴,供大家参考,具体内容如下 代码 from matplotlib import pyplot as pltfrom matplotlib import font_manager# 使得中文可以显示出来my_font = font_manager.FontProperties(fname=/usr/share/fonts/truetype/arphic/ukai.ttc)y_3 = [11, 15, 17, 16, 11, 12, 11, 12, 6, 6, 7, 8, 9, 12, 15, 14, 17, 18, 21, 16, 17, 20, 14, 15, 15, 19, 21, 22, 22, 22, 23]y_10 = [26, 26, 28, 19, 21, 17, 16, 19, 18, 20,……

  • Python3爬虫实现发送天气预报邮件
  • 前言 此次的目标是爬取指定城市的天气预报信息,然后再用Python发送邮件到指定的邮箱。 下面话不多说了,来一起看看详细的实现过程吧 一、爬取天气预报 1、首先是爬取天气预报的信息,用的网站是中国天气网,网址是http://www.weather.com.cn/static/html/weather.shtml,任意选择一个城市(比如武汉),然后要爬取的内容为下面的部分: 先查看网页源代码,并没有找到第一张图中的内容……

    python3 相关电子书
    学习笔记

    Copyright 2018-2020 xz577.com 码农之家

    本站所有电子书资源不再提供下载地址,只分享来路

    版权投诉 / 书籍推广 / 赞助:QQ:520161757