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

如何解析Python Request返回的多层嵌套JSON并获取指定ID对应值

解决Python访问JSON深层数据的TypeError问题

错误原因分析

  1. 键名不匹配:你的JSON结构中,ticket下的键是custom_field,但代码里写成了custom_fields,这会导致KeyError,需先修正键名。
  2. 遍历方式错误:r1["ticket"]["custom_field"]是一个列表,列表内每个元素是包含id和value的字典。你用for key, value in ticket:的方式遍历,会尝试把字典强制解包成两个变量,不符合列表元素的结构,进而引发TypeError。

正确实现代码

# 假设response是已通过requests获取的响应对象
r1 = response.json()
# 正确获取custom_field列表(注意键名是custom_field)
custom_fields = r1["ticket"]["custom_field"]

# 目标id
target_id = 341434334343125
matched_value = None

# 遍历列表中的每个字段字典
for field in custom_fields:
    if field["id"] == target_id:
        matched_value = field["value"]
        break  # 找到目标后立即退出循环,提升效率

# 输出结果
if matched_value is not None:
    print(f"匹配到的value值:{matched_value}")
else:
    print("未找到目标id对应的字段")

代码说明

  • 从JSON响应中正确提取custom_field列表;
  • 遍历列表中的每个字典元素field,直接通过键名访问id和value;
  • 匹配到目标id后,取出对应的value并终止循环;
  • 最后处理找到/未找到的情况,避免空值错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 22:40:03