这篇解决什么问题

很多新手一看到 json 就懵:

  • JSON 到底是什么东西?和 Python 字典一样吗?
  • 为什么所有程序都在用 JSON?
  • JSON 长什么样?有哪些规则?
  • 以后在 Python 里怎么用它存数据、读配置?

这一篇先不讲代码,纯小白视角讲清楚 JSON 本身

通俗、好记、不枯燥,为后面学 json 模块打好基础。

一、JSON 是什么?(用大白话讲)

JSON = JavaScript Object Notation

翻译成人话:

一种专门用来存数据、传数据的文本格式

你可以把它理解成:

  • 超级通用的 “数据记事本”
  • 所有语言(Python/Java/JS/PHP/Go)都认识
  • 结构清晰、体积小、读写快

所以:

  • 网站接口返回数据用 JSON
  • 软件配置文件用 JSON
  • 爬虫数据存成 JSON
  • 账号、列表、设置信息都能用 JSON 存
二、JSON 长什么样?(直接看例子)

一个标准 JSON 大概长这样:

{"name": "小明","age": 18,"is_student": true,"hobbies": ["读书", "跑步", "编程"],"score": {"math": 95,"english": 88}

看起来是不是特别像 Python 字典

对,它们结构几乎一样,这就是为什么 Python 对 JSON 支持特别好。

三、JSON 只有 6 种数据类型

JSON 非常简单,只支持这几种:

  1. 对象:用 { } 包裹,对应 Python 字典
  2. 数组:用 [ ] 包裹,对应 Python 列表
  3. 字符串:必须用双引号 "
  4. 数字:整数、小数都可以
  5. 布尔值:true / false(小写)
  6. 空值:null

没有更复杂的东西了,非常干净。

四、JSON 必须遵守的 5 条铁律(非常重要)

很多人报错,都是因为违反了这些规则:

1. 字符串必须用双引号

不能用单引号 ',否则不是标准 JSON。

❌ 错误

{ 'name': '小明' }

✅ 正确

{ "name": "小明" }

2. key 必须是字符串(必须加引号)

不像 Python 字典可以不加引号,JSON 必须加。

❌ 错误

{ name: "小明" }

✅ 正确

{ "name": "小明" }

3. 布尔值只能是小写

  • true ✅
  • false ✅
  • True ❌
  • FALSE ❌

4. 空值是 null

不是 Python 里的 None。

5. 最后一个元素后面不能加逗号

很多新手喜欢顺手加逗号,JSON 不允许。

❌ 错误

{"name": "小明","age": 18,  // 这里多了逗号}

✅ 正确

{"name": "小明","age": 18}
五、JSON 和 Python 数据的对应关系

这是后面写代码的核心,记一下:

JSON 类型

Python 类型

对象 {}

字典 dict

数组 []

列表 list

字符串

字符串 str

数字

int / float

true

True

false

False

null

None

几乎一一对应,所以 Python 操作 JSON 特别简单。

六、JSON 一般用在什么地方?(新手必看)

你以后写程序,90% 会遇到这些场景:

  1. 写配置文件
  2. 比如:数据库地址、账号信息、软件设置
  3. 爬虫获取数据
  4. 网页接口返回的几乎都是 JSON
  5. 存列表 / 字典数据
  6. 比 txt 更规范,比 Excel 更轻量
  7. 前后端交互
  8. 网站、APP、小程序传数据都用 JSON
  9. 日志、批量导出数据
  10. 结构清晰,方便其他程序读取
七、一个完整合法 JSON 示例

{"company": "科技公司","staff_list": ["id": 1,"name": "张三","department": "技术部","salary": 8000,"is_full_time": true},"id": 2,"name": "李四","department": "运营部","salary": 6000,"is_full_time": false],"update_time": "2026-04-09","remark": null}

你可以复制到任何在线 JSON 校验工具,都是合法的。

八、一句话总结 JSON

  • JSON 是通用数据格式,所有语言都认识
  • 结构像 Python 字典 + 列表,非常好理解
  • 必须用双引号,key 必须加引号
  • 用于配置、存储、接口传输
  • 和 Python 数据类型几乎一一对应

学会这些,你再学 Python 的 json 模块,

会觉得简单到离谱

JSON 是现代编程最基础的数据格式,

不管是办公、爬虫、后端、自动化都离不开。