什么是序列化, pickle, shelve(春节再整理), json, configparser(春节再整理)模块
Posted 狂澜
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是序列化, pickle, shelve(春节再整理), json, configparser(春节再整理)模块相关的知识,希望对你有一定的参考价值。
一.序列化.
什么是序列化:在我们存储数据或网络传输数据的时候,需要对我们的对象进行处理,把对象处理成方便存储和传输的数据格式,这个过程叫序列化,不同的序列化,结果也不同,但是目的是一样的,都是为了存储和传输.
在python 中有三种序列化方案:1.pickle 2.shelve 3.json
二.pickle模块.
pickle 模块把我们的python对象变成bytes写入到文件中,所以着东西不是给人看的,给机器看的.
pickle模块的方法有哪些:dumps(序列化一个对象,一堆bytes),
loads(反序列化一个对象,成原样)
dump(把对象写入到文件,一堆乱码的字符,具体原因可能是操作系统和py的原因,反正不是给人看的)
load(读取文件的内容,并且反序列化).
pickle写入文件时,如果元素太多,建议加如一个列表里面,方便以后的读取(文件内容读完了,继续读会报错)
三.json模块.
什么时json:
json是我们前后端交互的枢纽,相当于编程界的"普通话",json的语法格式可以完美的表示出一个对象,
下面这种格式,在python里面叫字典,而在javascript里面叫json,其优点是可以完美的表示出任何对象,并且可以完整的把对象表示出来,只要代码格式比较好
,那可读性也是很强的.
我们如何把python里的字典转换成JS那边的json(字符串类型):
注意:在py里,把字典里的中文远方不动转化成json,而非bytes,需要加个参数:(ensure_ascii = False)
json.dumps(dic,indent=2,ensure_ascii=False)把字典转化成json字符串,并且显示出中文,并且把数据"掰开"美化下
json.loads() 把json格式转化成原类型.
json.dump()把数据json话,写入文件
json.load()把数据从文件中读取出来,还原成原类型.
打印效果:
以上是关于什么是序列化, pickle, shelve(春节再整理), json, configparser(春节再整理)模块的主要内容,如果未能解决你的问题,请参考以下文章
序列化 pickle(重点) shelve json(重点)