分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 教程案例

json和pickle的序列化与反序列化

发布时间:2023-09-06 02:14责任编辑:傅花花关键词:jsjson

(1)json的序列化

‘‘‘Json序列化实现了把内存中的内容放到硬盘上,通过Json反序列化又把硬盘上的内容都回来的效果,用到的函数分别为json.dumps()和json.loads();(Json只支持简单的数据对象,例如字符串、字典、数组等。)在python3中,json可以dump多次,但是只能load一次;所以使用json序列化时尽量只dump一次,只load一次,如果需要多次dump,每次都要dump到不同的文件夹中。‘‘‘import jsoninfo={"name":"lhy", ?????"age":18 ?????}f=open(‘text.txt‘,‘w‘)#f.write(json.dumps(info))json.dump(info,f)f.close()

序列化的结果:

text.txt文件中存入了:{"age": 18, "name": "lhy"}

(2)json的反序列化:

import jsonf=open("text.txt",‘r‘)data=json.loads(f.read()) ????#data=json.load(f)
print(data)
print(data[‘age‘])

反序列化的结果:

(3)pickle序列化:

import pickledef func_mini(name): ???print("hello",name)f=open(‘text.txt‘,‘rb‘)#data=pickle.loads(f.read())data=pickle.load(f)print(data)print(data["func"](‘lhy‘))f.close()

序列化的结果:

在text.txt文件中存入以下内容:

(4)pickle反序列化:

import pickledef func_mini(name): ???print("hello",name)f=open(‘text.txt‘,‘rb‘)#data=pickle.loads(f.read())data=pickle.load(f)print(data)print(data["func"](‘lhy‘))f.close()

反序列化的结果:

 Json序列化和pickle序列化用到的方法是完全一样的,不同之处是,json序列化可以用在其它语言中,而pickle序列化只能用在python语言中;json只能处理简单的数据对象,例如:列表、数组、字典等,而pickle可以处理任意数据对象。pickle序列化中文件的读写方式为”rb”,”wb”,json序列化中文件的读写模式即为“r”,”w”。

json和pickle的序列化与反序列化

原文地址:https://www.cnblogs.com/come-on-baby/p/9649124.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved