惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
Visual Studio Blog
爱范儿
爱范儿
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
雷峰网
雷峰网
V
V2EX
博客园_首页
Engineering at Meta
Engineering at Meta
博客园 - 聂微东
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Apple Machine Learning Research
Apple Machine Learning Research
GbyAI
GbyAI
H
Help Net Security
A
About on SuperTechFans
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Blog — PlanetScale
Blog — PlanetScale
W
WeLiveSecurity
云风的 BLOG
云风的 BLOG
D
Docker
Security Archives - TechRepublic
Security Archives - TechRepublic
Help Net Security
Help Net Security
N
News and Events Feed by Topic
Simon Willison's Weblog
Simon Willison's Weblog
G
Google Developers Blog
A
Arctic Wolf
T
The Blog of Author Tim Ferriss
博客园 - 叶小钗
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Google DeepMind News
Google DeepMind News
博客园 - 三生石上(FineUI控件)
aimingoo的专栏
aimingoo的专栏
Hacker News: Ask HN
Hacker News: Ask HN
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 司徒正美
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
P
Privacy International News Feed
T
Troy Hunt's Blog
T
Tenable Blog
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Recorded Future
Recorded Future
F
Fortinet All Blogs
D
DataBreaches.Net
B
Blog
T
Threat Research - Cisco Blogs
MyScale Blog
MyScale Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
The GitHub Blog
The GitHub Blog
Security Latest
Security Latest
M
MIT News - Artificial intelligence

博客园 - tsembrace

Pandas数据分析教程,由浅入深讲解(五)Pandas IO操作 Pandas数据分析教程,由浅入深讲解(四) Pandas数据分析教程,由浅入深讲解(三) Pandas数据分析教程,由浅入深讲解(二) Pandas数据分析教程,由浅入深讲解(一) B站黑马Python+AI零基础入门(二)AI应用-实战 B站黑马Python+AI零基础入门(一)AI应用-基础 B站清华128小时Python高级教程一(C3深入类和对象) B站清华128小时Python高级教程一(C1、C2) B站python入门学习---第二阶段第二章数据库、SQL和MySQL B站python入门学习---第二阶段第一章类和对象 B站python入门学习---第一阶段第十章 数据可视化 B站python入门学习---第一阶段第八~九章 文件操作、异常、模块与包 B站python入门学习---第一阶段前七章回顾复习(二) B站python入门学习---第一阶段前七章回顾复习(一) Python入门学习(十)第十四章其他 Python入门学习(九)Python的高级语法与用法(四)装饰器 Python入门学习(九)Python的高级语法与用法(三)函数式编程 Python入门学习(九)Python的高级语法与用法(二)闭包 Python入门学习(九)Python的高级语法与用法(一)枚举 Python入门学习(七)高级部分:正则表达式(二) Python入门学习(七)高级部分:正则表达式 Python入门学习(六)高级部分:面向对象 Python入门学习(五)函数 Python入门学习(四)流程控制 包与模块
Python入门学习(八)JSON、反序列化、序列化
tsembrace · 2025-08-03 · via 博客园 - tsembrace

JSON是一种轻量化的数据格式,用于多程序语言之间的信息交互。

JSON本身也有好几种格式,但本质就是一个字符串,有object格式,其形式上类似于python的字典格式;另一种格式为array即数组格式,其形式上类似于python的列表。
不同的语言需要把交互的信息包装成相同的格式:即引号标识的字符串;字符串中的内容又需要适应不同的语言,使其可以各自转化为需要的格式;python中提供json.loads()方法转化为字典格式,其他如javascript中,可以转换为对象格式。
import json

#json是一种轻量化的数据格式,用于多程序语言之间的信息交互
#JSON本身也有好几种格式,但本质就是一个字符串,其中如下为object格式
#其形式上类似于python的字典格式
json_str = '{"name":"qiyue", "age":18}'
#不同的语言需要把交互的信息包装成相同的格式:即引号标识的字符串
#字符串中的内容又需要适应不同的语言,使其可以各自转化为需要的格式
#python中提供json.loads()方法转化为字典格式,其他如javascript中,可以转换为对象格式
student = json.loads(json_str)
print(type(student))
print(student)
print(student["name"])
print(student["age"])

#JSON另一种格式为array即数组格式,其形式上类似于python的列表
json_str1 = '[{"name":"qiyue", "age":18}, {"name":"wuyue", "age":16}]'
student1 = json.loads(json_str1)
print(type(student1))
print(student1)
print(student1[0]["name"], student1[1]["age"])

如上述将JSON数据转换为python数据的过程也称为“反序列化”,即由字符串到某种语言数据的过程。

除了上述的object(对应python中的dict),array(对应python中的list),json中还有如下格式:string对应str,number对应int和float,true/false对应True/False,null对应None。

从某种语言的数据转换为json的字符串的过程称为“序列化”。

import json
student = [
    {'name': 'qiyue', 'age': 18, 'flag': False},
    {'name': 'liuyue', 'age': 16}
]
#序列化
json_str = json.dumps(student)
print(type(json_str))
print(json_str)