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

调用API解析JSON遇TypeError:列表索引需为整数或切片而非字符串

错误解释与问题分析

错误含义

TypeError: list indices must be integers or slices, not str 翻译成中文是:类型错误:列表的索引必须是整数或切片,不能使用字符串。

问题原因

你的代码中 data[1]['layout'] 这一步出现了问题:data[1] 返回的是一个列表(list),而非你预期的字典(dict)。列表只能用整数(比如0、1)或者切片(比如1:3)来访问元素,你用字符串'layout'去索引列表,Python就会抛出这个错误。

解决方案

  1. 先打印返回的完整数据结构,明确每个层级的类型:
    import requests
    import json
    
    raw = requests.get("https://services.api.no/api/ordino/frontpage/retten/11-5881f97a8e5dac09a5e6e8a1/wide/legacy")
    data = raw.json()
    # 格式化打印数据,方便查看层级结构
    print(json.dumps(data, indent=2))
    
  2. 根据打印结果,找到包含layout字段的字典所在位置,调整索引逻辑。比如如果layout在data[1]的某个列表元素中,需要先通过整数索引定位到该元素,再用字符串键访问layout。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 06:40:54