python json保存数据的方法

37次阅读

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

python json保存数据的方法

在Python中保存数据为JSON格式,主要使用内置的json模块。它能将Python对象(如字典、列表)转换成JSON字符串,并写入文件。以下是常用方法和注意事项。

1. 使用 json.dump() 直接保存到文件

这是最常见的方式,适合将数据直接写入文件。

示例:

import json <p>data = { "name": "Alice", "age": 25, "is_student": False, "hobbies": ["reading", "coding"] }</p><h1>写入JSON文件</h1><p>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 json <p>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也支持保存列表结构,适合存储多条记录。

python json保存数据的方法

Find JSON Path Online

Easily find JSON paths within JSON objects using our intuitive Json Path Finder

python json保存数据的方法 30

查看详情 python json保存数据的方法

立即学习Python免费学习笔记(深入)”;

示例:

users = [     {"id": 1, "name": "Alice"},     {"id": 2, "name": "Bob"} ] <p>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 和合理设置参数,就能稳定保存数据。

text=ZqhQzanResources