资讯动态

Python JSON 操作指南:4 个核心方法一文吃透

发布时间:2026/8/24 12:28:36 来源:尧图企业网站定制
在 Python 开发中JSON 是最常用的数据交换格式无论是接口数据传输、配置文件读写还是数据持久化都离不开json模块。但很多新手容易混淆dump/dumps/load/loads四个方法今天就用最通俗的语言、最全的案例帮你彻底搞定 Python JSON 操作一、先搞懂4 个核心方法的核心区别json模块的 4 个方法本质是 **「数据类型转换」和「文件读写」** 的组合一句话区分带s的dumps/loads操作字符串内存中转换不读写文件不带s的dump/load操作文件直接读写文件一步到位dump开头Python 对象 → JSON序列化load开头JSON → Python 对象反序列化二、序列化Python 对象 → JSON 格式序列化就是把 Python 里的字典、列表转换成标准的 JSON 格式分转字符串和写文件两种场景。1. json.dumps ()转 JSON 字符串最常用适合需要在内存中使用 JSON 字符串的场景比如打印、接口返回数据。关键参数ensure_asciiFalse保留中文默认会把中文转成 Unicode 编码indent4格式化缩进让 JSON 更易读import json # 定义 Python 字典 student { name: 张三, age: 22, major: 计算机科学, hobbies: [编程, 篮球, 阅读] } # 转换为 JSON 字符串保留中文格式化 json_str json.dumps(student, ensure_asciiFalse, indent4) # 输出结果标准 JSON 格式字符串 print(JSON 字符串) print(json_str) print(类型, type(json_str)) # class str2. json.dump ()直接写入 JSON 文件适合需要把数据持久化保存到文件的场景一步完成转换 写入无需手动处理字符串。import json student { name: 李四, age: 23, major: 人工智能 } # 打开文件直接写入 JSON 数据 with open(student.json, w, encodingutf-8) as f: # 参数Python对象 文件对象 格式化参数 json.dump(student, f, ensure_asciiFalse, indent4) # 执行后桌面/代码目录会生成 student.json 文件三、反序列化JSON 格式 → Python 对象反序列化就是把 JSON 数据转回 Python 能直接操作的字典、列表同样分解析字符串和读文件两种场景。1. json.loads ()解析 JSON 字符串适合处理接口返回的字符串、变量中的 JSON 数据转回 Python 字典后可直接取值。import json # 模拟 JSON 字符串比如接口返回的数据 json_str { name: 张三, age: 22, major: 计算机科学, hobbies: [编程, 篮球, 阅读] } # 转换为 Python 字典 python_dict json.loads(json_str) # 直接像字典一样取值 print(姓名, python_dict[name]) # 张三 print(年龄, python_dict[age]) # 22 print(类型, type(python_dict)) # class dict2. json.load ()直接读取 JSON 文件适合读取本地 JSON 配置文件、数据文件一步完成读取 转换。import json # 读取刚才写入的 student.json 文件 with open(student.json, r, encodingutf-8) as f: # 直接从文件转换为 Python 字典 python_dict json.load(f) print(读取文件数据, python_dict) print(专业, python_dict[major]) # 人工智能四、新手必避的 3 个坑坑 1混淆 dump 和 dumps报错根源想转字符串却用json.dump()→ 报TypeError: dump() missing 1 required positional argument: fp正确转字符串用dumps()写文件用dump()坑 2中文乱码必须加ensure_asciiFalse否则中文会变成\u5f20\u4e09这类 Unicode 编码。坑 3JSON 格式不标准JSON 语法严格键必须用双引号不能用单引号最后一个元素后不能加逗号。# 错误单引号 error_json {name: 张三} # 正确双引号 right_json {name: 张三}五、完整实战案例数据读写闭环import json # 1. 定义 Python 数据 data { title: Python JSON 教程, author: 编程新手, content: 4个方法搞定 JSON 操作, like: 100 } # 2. 序列化转 JSON 字符串 json_str json.dumps(data, ensure_asciiFalse, indent4) print(序列化完成\n, json_str) # 3. 写入文件 with open(blog.json, w, encodingutf-8) as f: json.dump(data, f, ensure_asciiFalse, indent4) # 4. 读取文件并反序列化 with open(blog.json, r, encodingutf-8) as f: read_data json.load(f) # 5. 验证结果 print(\n读取文件后的数据) print(f标题{read_data[title]}) print(f作者{read_data[author]})六、总结记忆口诀序列化转 JSON转字符串dumps带 s内存操作最方便写文件dump无 s一步写入不麻烦反序列化转回 Python解析字符串loads带 s快速取值超简单读文件load无 s文件读取一键转中文保留加参数ensure_asciiFalse别忘掉吃透这 4 个方法Python 中所有 JSON 相关的操作都能轻松搞定再也不用怕混淆和报错啦总结JSON 核心 4 方法dumps/dump/loads/load带 s 操作字符串、无 s 操作文件序列化Python → JSONdumps转字符串、dump写文件反序列化JSON → Pythonloads解析字符串、load读文件必加参数ensure_asciiFalse保留中文indent格式化输出。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价