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

Python如何查询JSON文件中指定name值对应的iso字段值

实现方法

Python 标准库自带的json模块就可以完成这个需求,不需要额外安装第三方库,具体实现步骤如下:

  • 步骤1:用json.load()读取本地JSON文件,将JSON结构转换为Python可操作的字典/列表结构
  • 步骤2:遍历response下的holidays数组,匹配name字段值为New Year's Day的条目
  • 步骤3:匹配成功后直接取对应条目的date.iso字段值即可

完整示例代码

import json

# 读取dates.json文件,encoding指定为utf-8避免中文/特殊字符乱码
with open("dates.json", "r", encoding="utf-8") as f:
    data = json.load(f)

target_name = "New Year's Day"
target_iso = None

# 遍历假期列表匹配目标
for holiday in data["response"]["holidays"]:
    if holiday["name"] == target_name:
        target_iso = holiday["date"]["iso"]
        break

# 输出结果
if target_iso:
    print(f"查询到的ISO日期为:{target_iso}")
else:
    print(f"未找到名称为「{target_name}」的假期条目")

注意:如果运行时报文件不存在的错误,检查dates.json是否和当前Python脚本放在同一目录,或者把open()里的文件路径替换为dates.json的绝对路径即可。


拓展:多查询场景优化

如果需要多次按假期名称查询,可以先把列表转成以名称为key的字典,后续查询不需要重复遍历,效率更高:

# 提前构建名称映射字典
holiday_name_map = {item["name"]: item for item in data["response"]["holidays"]}
# 直接查询,多层get避免找不到字段时报错
target_iso = holiday_name_map.get("New Year's Day", {}).get("date", {}).get("iso")
print(target_iso)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.13 20:39:02