You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3如何基于IF条件从现有JSON文件生成新JSON文件

Python3 实现JSON字段扩展方案

直接上可直接运行的完整代码:

import json

# 班次对应时间规则,后续调整时间直接修改该配置即可
SHIFT_RULE = {
    "NIGHT": {
        "shiftHourStart": "22:00:00",
        "shiftHourEnd": "06:00:00"
    },
    "DAYS": {
        "shiftHourStart": "06:00:00",
        "shiftHourEnd": "15:00:00"
    }
}

# 读取原始JSON文件,把input.json替换为你本地的文件路径
with open("input.json", "r", encoding="utf-8") as f:
    raw_data = json.load(f)

# 遍历处理每一条记录
for item in raw_data:
    current_shift = item.get("shift", "")
    if current_shift in SHIFT_RULE:
        # 给当前条目追加班次时间字段
        item.update(SHIFT_RULE[current_shift])
    # 如果需要把原始的DAYS修改为DAY,取消下面这行注释即可
    # item["shift"] = "DAY" if current_shift == "DAYS" else current_shift

# 输出到新的JSON文件,indent参数控制缩进空格数,匹配你示例的6格缩进
with open("output.json", "w", encoding="utf-8") as f:
    json.dump(raw_data, f, ensure_ascii=False, indent=6)

补充说明

  • 代码默认保留原始所有字段,如果你需要删除不需要的字段,可在循环中添加del item["不需要的字段名"]实现
  • 你给出的预期示例中shift字段值和原始值不匹配,如有修改shift字段的需求,取消代码中对应注释行即可
  • indent参数可以自行调整,要改成常用的4格缩进直接把参数值改成4即可

内容的提问来源于stack exchange,提问作者user16514127

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.11 12:18:01