Python中序列化与反序列化的区别有哪些-创新互联

Python中序列化与反序列化的区别有哪些?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

创新互联专业为企业提供察哈尔右翼前网站建设、察哈尔右翼前做网站、察哈尔右翼前网站设计、察哈尔右翼前网站制作等企业网站建设、网页设计与制作、察哈尔右翼前企业网站模板建站服务,十多年察哈尔右翼前做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

序列化是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态(存在内存中)写入到临时或持久性存储区(硬盘)。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。

实现对象的序列化和反序列化在python中有两种方式:json 和 pickle。

其中json用于字符串 和 python数据类型间进行转换,pickle用于python特有的类型 和 python的数据类型间进行转换,pickle是python特有的。

1、JSON序列化:json.dumps()

info = {
  "name":"tj",
  "age":22
}
import json
print(info)
print(type(info))
print(json.dumps(info))
print(type(json.dumps(info)))

f = open("test.txt","w")
# f.write(info)  # TypeError: write() argument must be str, not dict
f.write(json.dumps(info)) # 正常写入文件 f.write(json.dumps(info)) 等价于 json.dump(info, f)
f.close()

>>>
{'name': 'tj', 'age': 22}

{"name": "tj", "age": 22}

本文标题:Python中序列化与反序列化的区别有哪些-创新互联
文章链接:http://myzitong.com/article/dedoco.html