You need to enable JavaScript to run this app. Python实现嵌套JSON结构转换 重构列表JSON为城市编码键字典
优惠活动
大模型
产品
解决方案
定价
更多

Python实现嵌套JSON结构转换 重构列表JSON为城市编码键字典

tribunals.json 层级结构转换Python脚本

代码核心逻辑

  • 全量读入原始JSON数组
  • 遍历每个城市条目,以城市编码为外层字典键
  • 遍历城市下属法庭列表,以法庭名称为内层字典键,映射对应资源路径
  • 格式化输出处理后的JSON文件

完整可运行代码

import json

# 替换为实际的文件路径
INPUT_FILE = "tribunals.json"
OUTPUT_FILE = "tribunals_result.json"

result = {}

# 读取原始数据
with open(INPUT_FILE, "r", encoding="utf-8") as f:
    raw_list = json.load(f)

# 构建层级字典
for city_entry in raw_list:
    city_code = city_entry["city"]
    # 若需合并重复城市的法庭数据,可先判断city_code是否已存在于result中,不存在再初始化空字典
    result[city_code] = {}
    for tribunal in city_entry["tribunals"]:
        result[city_code][tribunal["name"]] = tribunal["value"]

# 写入输出文件
with open(OUTPUT_FILE, "w", encoding="utf-8") as f:
    # ensure_ascii=False 保证中文不被转义,indent=2 格式化输出缩进
    json.dump(result, f, ensure_ascii=False, indent=2)

print(f"转换完成,输出文件路径:{OUTPUT_FILE}")

适配说明

  • 若原始文件体积过大超出内存承载上限,可使用ijson等流式JSON解析库替代全量json.load逻辑,避免内存溢出
  • 不需要格式化缩进的场景,删除indent=2参数即可,输出文件体积更小
  • 若存在重复法庭名称的场景,默认后者覆盖前者,可根据需求增加去重或合并逻辑

内容的提问来源于stack exchange,提问作者David López

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.10 04:27:05