Python写入JSON文件时出现格式丢失问题该如何解决?
问题原因
你调用json.dump()时没有指定缩进参数,该方法默认输出无换行的压缩格式JSON,适用于网络传输等对体积敏感的场景,不符合你需要的可读性格式化输出需求。
解决方法
给json.dump()方法添加indent参数,指定每一层级的缩进空格数即可实现格式化换行输出,常用值为2或4。如果数据包含非ASCII字符(比如中文),可额外添加ensure_ascii=False参数避免字符转码乱码,指定文件编码为utf-8也能进一步避免编码异常。
修正后的代码
import json # 此处省略你从API获取json_response的原有逻辑 new_class = {"class": json_response} with open("new_class.json", "w", encoding="utf-8") as fp: json.dump(new_class, fp, indent=4, ensure_ascii=False)
效果说明
添加indent=4参数后,生成的JSON文件会自动按层级缩进4个空格,完全匹配你预期的结构化排版效果。
内容的提问来源于stack exchange,提问作者user13744439
相关产品推荐
相关产品推荐

