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

首次API项目遇KeyError:无法获取mobile_phones字段数据求助

问题排查与解决

核心问题分析

  • API返回数据是列表包裹的字典结构:你提供的API返回末尾带有],说明整个响应是一个列表,直接通过response['mobile_phones']取值会找不到对应键,因为列表不能用字符串索引。
  • 代码变量名拼写错误:循环内使用了未定义的resposta,但循环变量实际是number,后续会触发NameError。
  • 类型拼接隐患:ddd是整数类型,直接与字符串拼接会报错,需先转换为字符串。

修正后的代码

response = data.json()

# 先提取列表中的第一个字典元素
user_info = response[0]

for phone in user_info['mobile_phones']:
    dd = str(phone['ddd'])  # 转换为字符串避免拼接错误
    num = phone['number']
    whatsapp = phone['whatsapp_datetime']
    print(f"{dd}{num}{whatsapp}")  # 使用f-string提升可读性

额外优化建议

  • 调试时先打印print(response)确认API返回的实际结构,避免对数据格式的误判。
  • 可以用字典的get方法做容错处理,比如user_info.get('mobile_phones', []),即使mobile_phones键不存在也不会触发KeyError,而是返回空列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 22:30:54