Python中序列化/反序列化JSON格式的数据

基本概念

**  JSON:**

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解  析和生成,并有效地提升网络传输效率。

**序列化:**是将数据结构或对象转换为字节流(二进制数据)以便存储或传输

**反序列化:**是将字节流还原为原始数据结构或对象的过程。

json模块是Python标准库中的一个模块,用于处理JSON(JavaScript Object Notation)数据。它提供了一组函数来解析和生成JSON数据,使得在Python中处理JSON变得非常方便。

|-------------|--------|
| Python | JSON |
| dict | object |
| list, tuple | array |
| str | string |
| int, float | number |
| True | true |
| False | false |
| None | null |

Python序列化

将Python数据对象转化为json格式的字符串

语法:json.dumps()

复制代码
 1 num = 3.14
 2 name = 'hello'
 3 l = [1, 2, 3]
 4 t = (4, 5, 6)
 5 d = {'name': "hello", 'age': 19, "is_married": False, "gfs": None}
 6 
 7 print(repr(json.dumps(num)))  # '3.14'
 8 print(repr(json.dumps(name)))  # '"hello"'
 9 print(repr(json.dumps(l)))  # '[1, 2, 3]'
10 print(repr(json.dumps(t)))  # '[4,5,6]'
11 print(repr(json.dumps(d)))  # '{"name":"hello","age":19,"is_married":false,"gfs":null}'

Python反序列化

将json格式字符串转为Python支持的数据对象格式

语法:json.loads()

复制代码
1 import json
2 
3 s = '{"name":"hello","age":19,"is_married":false,"gfs":null}'
4 data = json.loads(s)
5 print(data, type(data))  # {'name': 'hello', 'age': 19, 'is_married': False, 'gfs': None} <class 'dict'>

补充:

JS的序列化和反序列化(前端JS和后端Python之间网络传输数据通过JSON来进行交换)

序列化:JSON.stringify()

反序列化:JSON.parse()

相关推荐
计算机毕业编程指导师5 分钟前
大数据可视化毕设:Hadoop+Spark交通分析系统从零到上线 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·spark·毕业设计·城市交通
计算机毕业编程指导师13 分钟前
【计算机毕设选题】基于Spark的车辆排放分析:2026年热门大数据项目 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·spark·毕业设计·车辆排放
浔川python社18 分钟前
浔川社团关于产品数据情况的官方通告
python
生活很暖很治愈20 分钟前
GUI自动化测试[3]——控件&数鼠标操作
windows·python·功能测试·测试工具
老蒋每日coding31 分钟前
Python3基础练习题详解,从入门到熟练的 50 个实例(一)
开发语言·python
HAPPY酷37 分钟前
构建即自由:一份为创造者设计的 Windows C++ 自动化构建指南
开发语言·c++·ide·windows·python·策略模式·visual studio
瑶池酒剑仙39 分钟前
Libvio.link爬虫技术解析大纲
爬虫·python
喵手1 小时前
Python爬虫实战:构建 Steam 游戏数据库:requests+lxml 实战游戏列表采集与价格监控(附JSON导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集steam商店游戏列表数据·sqlite数据库存放采集数据·价格监控游戏推荐市场分析
老蒋每日coding1 小时前
LangGraph:从入门到Multi-Agent超级智能体系统进阶开发
开发语言·python
岚天start1 小时前
Python HTTP服务器添加简单用户名密码认证的三种方案
服务器·python·http