使用json模块可将Python对象保存为JSON文件,常用方法是json.dump()直接写入文件,支持中文需设ensure_ascii=False并指定UTF-8编码,indent用于格式化输出;也可用json.dumps()先转字符串再写入,适用于需预处理场景;列表结构可直接保存,如批量数据;注意不支持自定义对象、set、datetime等类型,需转换为字典或使用default参数处理,写入时"w"模式会覆盖原文件。

在Python中保存数据为JSON格式,主要使用内置的json模块。它能将Python对象(如字典、列表)转换成JSON字符串,并写入文件。以下是常用方法和注意事项。
1. 使用 json.dump() 直接保存到文件
这是最常见的方式,适合将数据直接写入文件。
示例:import json说明:data = { "name": "Alice", "age": 25, "is_student": False, "hobbies": ["reading", "coding"] }
写入JSON文件
with open("data.json", "w", encoding="utf-8") as f: json.dump(data, f, ensure_ascii=False, indent=4)
2. 先转字符串再保存(使用 json.dumps)
当你需要先处理JSON字符串时可用此方法。
示例:import json适用场景:json_str = json.dumps(data, ensure_ascii=False, indent=4) with open("data.json", "w", encoding="utf-8") as f: f.write(json_str)
- 需要对JSON字符串做额外处理(如添加注释、拼接)
- 调试时查看生成的字符串内容
3. 保存列表或批量数据
JSON也支持保存列表结构,适合存储多条记录。
SHOPEX简灰服装商城整站源码下载。 安装方法:1.解压上传程序至网站根目录.. 访问:域名/bak.(用户名:admin 密码:123456)2.进入帝国备份王后,配置数据库数据库信息.选择-www.taomoban.net目录.还原数据库.3.修改FTP目录下的config/config.phpphp 数据库连接信息.4.登陆网站后台--清空缓存..5.删除bak文件夹 后台:shopadm
立即学习“Python免费学习笔记(深入)”;
示例:users = [
{"id": 1, "name": "Alice"},
{"id": 2, "name": "Bob"}
]
with open("users.json", "w", encoding="utf-8") as f:
json.dump(users, f, ensure_ascii=False, indent=2)
4. 注意事项
避免常见错误,确保数据正确保存。
- 不能直接保存自定义对象(如类实例),需先转为字典
- 不支持的数据类型(如set、datetime)会报错,可配合default参数处理
- 写文件时使用
"w"模式会覆盖原内容,追加需先读再写
基本上就这些。掌握 json.dump 和合理设置参数,就能稳定保存数据。










