使用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 jsondata = {"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)
说明:ensure_ascii=False:支持中文等非ASCII字符indent=4:美化输出,使用4个空格缩进文件以UTF-8编码打开,避免中文乱码
2. 先转字符串再保存(使用 json.dumps)
当你需要先处理JSON字符串时可用此方法。
示例:
import jsonjson_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也支持保存列表结构,适合存储多条记录。
立即学习“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 和合理设置参数,就能稳定保存数据。
以上就是python json保存数据的方法的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1379686.html
微信扫一扫
支付宝扫一扫