Python json & pickle, shelve 模块

json

  • 用于字符串和python的数据类型间的转换
  • 四个功能
    • dumps
    • dump
    • loads
    • load

pickle

  • 用于python特有的类型和python的数据类型进行转换
  • 四个功能
    • dumps
    • dump
    • loads
    • load

shelve

  • 是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式
  •  1 # !/user/bin/python
     2 # -*- coding: utf-8 -*-
     3 import shelve
     4
     5 d = shelve.open(‘shelve_test‘)  # 打开当前脚本(open里的名字是当前脚本的名字)
     6
     7 # info = {‘age‘:22, ‘job‘:‘it‘}
     8 #
     9 # name=[‘alex‘,‘rain‘,‘test‘]
    10 # d[‘name‘] = name  # 持久化列表  会在当前目录下生成一个文件存储name里的信息.
    11 # d[‘info‘] = info  # 持久化字典, 会在当前目录下生成一个文件存储info里的信息.
    12 # 一共生成了三个文件, shelve_Test.bak; slelve_Test.dat; shelve_Test.dir.
    13
    14
    15 # 可以把生成的文件内容读出来, 就可以获取name, info的内容.
    16 print(d.get(‘name‘))
    17 print(d.get(‘info‘))

原文地址:https://www.cnblogs.com/cheese320/p/9059772.html

时间: 2024-08-28 18:40:55

Python json & pickle, shelve 模块的相关文章

python序列化: json & pickle & shelve 模块

一.json & pickle & shelve 模块 json,用于字符串 和 python数据类型间进行转换pickle,用于python特有的类型 和 python的数据类型间进行转换Json模块提供了四个功能:dumps.dump.loads.loadpickle模块提供了四个功能:dumps.dump.loads.load json模块:下面通过一些示例来学习:首先我们来看json的dumps和loads方法 s1={"k1":"v1"}

python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib subprocess logging re正则

python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib  subprocess logging re正则 转自老男孩老师Yuan:http://www.cnblogs.com/yuanchenqi/articles/5732581.html 模块&包(* * * * *) 模块(modue)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,

json&pickle&shelve模块

之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值. 什么是序列化? 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling,在其他语言中也被称之为serialization,marshalling,flattening等等,都是一个意思

json,pickle,shelve模块,xml处理模块

常用模块学习-序列化模块详解 什么叫序列化? 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 为什么要序列化? 你打游戏过程中,打累了,停下来,关掉游戏.想过2天再玩,2天之后,游戏又从你上次停止的地方继续运行,你上次游戏的进度肯定保存在硬盘上了,是以何种形式呢?游戏过程中产生的很多临时数据是不规律的,可能在你关掉游戏时正好有10个列表,3个嵌套字典的数据集合在内存里,需要存下来?你如何存?把列表变成文件里的多行多列形式

Python全栈开发记录_第八篇(模块收尾工作 json & pickle & shelve & xml)

由于上一篇篇幅较大,留下的这一点内容就想在这里说一下,顺便有个小练习给大家一起玩玩,首先来学习json 和 pickle. 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了,所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值. 什么是序列化? 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中叫pic

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

一,为什么要序列化 # 将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化'''比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给?现在我们能想到的方法就是存在文件里,然后另一个python程序再从文件里读出来.但是我们都知道,对于文件来说是没有字典这个概念的,所以我们只能将数据转换成字典放到文件中.你一定会问,将字典转换成一个字符串很简单,就是str(dic)就可以办到了,为什么我们还要学习序列化模块呢?没错序列化的过程就是从dic 变成str(dic)的

json、pickle\shelve模块讲解

json.pickle模块讲解 见我前面的文章:http://www.cnblogs.com/itfat/p/7456054.html shelve模块讲解(超级好用~!) json和pickle的模块只允许dump和load一次,而shelve可以支持多次. shelve模块是一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式 执行这段代码以后会生成三个文件: 然后我们再把它读取出来:

2018-06-26-Python全栈开发day22-part1-os,json,sys,pickle,shelve模块介绍

1.os模块 1.1 os.getcwd() #获取当前目录 a=os.getcwd() print(a) 1.2 os.chdir() #更改脚本当前目录 os.chdir('path') 1.3 os.makedirs() os.makedirs('dirname1/diename2') 1.4 os.removedirs() 删除文件夹,可以一起删除当前文件下的子文件夹,不为空的话,为空则全删 1.5 os.makedir() 建立单个文件夹 1.6 os.rmdir() 删除单个文件夹

常用模块(json/pickle/shelve/XML)

一.json模块(重点) 一种跨平台的数据格式 也属于序列化的一种方式 介绍模块之前,三个问题: 序列化是什么? 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化. 反序列化又是什么? 将硬盘上存储的中间格式数据在还原为内存中的数据结构 为什么要序列化? 1.持久保持状态 2.跨平台数据的交互 JSON是什么? java script object notation 就是对象表示法 var obj = {"name":"egon"} 对于我们开发而言 j