Python中如何修改JSON输出以匹配转换后的目标格式
Python实现JSON结构转换方案
实现逻辑如下:
- 调用Python内置
json模块读取本地JSON文件,加载为可操作的Python数据对象 - 遍历每个数据条目,将
label字段下的字典对象按指定顺序提取值组装为列表,替换原有字典结构 - 将处理后的数据重新序列化为JSON格式输出即可
完整代码示例:
import json # 替换为你的本地JSON文件路径 input_path = "source.json" # 替换为你要输出的文件路径 output_path = "processed.json" # 读取源JSON文件 with open(input_path, "r", encoding="utf-8") as f: raw_data = json.load(f) # 按需求转换label字段结构 for entry in raw_data: if "label" not in entry or not isinstance(entry["label"], list): continue # 显式指定键的顺序,保证输出值的顺序符合要求 key_sequence = ["text", "purpose", "starting", "ending"] new_label = [] for label_obj in entry["label"]: # 按顺序提取对应值组成列表 new_label.append([label_obj[key] for key in key_sequence]) entry["label"] = new_label # 输出处理后的JSON到文件 with open(output_path, "w", encoding="utf-8") as f: json.dump(raw_data, f, ensure_ascii=False, indent=4)
注意事项:
- 代码中显式指定了
key_sequence来控制输出值的顺序,避免不同Python版本下字典遍历顺序差异导致的结果不符合预期,如果后续label内的键有调整,直接修改这个列表的内容和顺序即可 - 如果不需要保存为文件,也可以直接用
json.dumps(raw_data, ensure_ascii=False, indent=4)获取转换后的JSON字符串直接使用
内容的提问来源于stack exchange,提问作者Jowey
相关产品推荐
相关产品推荐

