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

Python如何判断请求返回JSON中extension键值是否为txt并输出提示

问题诊断

你的代码存在2个核心错误:

  • 误用了导入的json模块名取值:你已经将请求返回的JSON数据存储在data_JSON变量中,不能直接写json['diffs']调用
  • 层级取值错误:从给出的JSON结构可以看到,extension字段存放在diffs数组下每个元素的source子对象中,不能直接从element层级取extension

修正后可运行代码

from requests import get

# 先校验请求状态,避免接口异常导致后续逻辑报错
resp = get('http://你的实际请求地址', auth=('user', 'password'))
resp.raise_for_status() # 接口返回非200状态码时会直接抛出异常,方便排查问题

data_json = resp.json()

for element in data_json['diffs']:
    # 先判断字段是否存在,避免JSON结构变动时出现KeyError报错
    if 'source' in element and element['source'].get('extension') == 'txt':
        print("have txt")

优化说明

  • 移除了未使用的json模块导入,精简代码
  • 新增了接口请求状态校验逻辑,降低异常排查成本
  • 增加了字段存在性判断,兼容JSON结构轻微变动的场景

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 13:48:02