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

Python如何从无外层标识的JSON列表中提取指定键的所有对应值

问题解决说明

报错原因

你调用接口返回的result是列表类型,列表仅支持整数索引或切片取值,你参考的旧方案适配顶层为字典的JSON结构,和你的数据结构不匹配,因此触发TypeError: list indices must be integers or slices, not str报错。

正确实现代码

单键值提取函数

你可以直接遍历列表中的每个字典元素,提取对应键的值:

def get_val(key):
    # 若要避免部分条目无对应键的报错,可改为 entry.get(key),无对应键时会返回None
    return [entry[key] for entry in result]

# 调用示例
all_retweet = get_val('retweet_count')
all_favorite = get_val('favorite_count')
print(all_retweet)
print(all_favorite)

一次性提取两个键的对应值

如果需要同时拿转发数和点赞数,可以直接生成对应关系的列表:

# 每个元素为 (转发数, 点赞数) 格式的元组
all_stats = [(item['retweet_count'], item['favorite_count']) for item in result]

# 批量输出示例
for idx, (ret, fav) in enumerate(all_stats):
    print(f"第{idx+1}条内容:转发{ret}次,点赞{fav}次")

以上方法可以自动遍历所有返回的条目,不需要手动逐个索引取值,适配任意长度的返回数据。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 07:15:03