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

Python如何提取JSON文件中列表首字典元素的所有值

报错原因

两个版本的代码问题分别是:

  • 初始版本用两层循环:外层遍历根列表里的每一个字典,内层遍历单个字典的所有值,最终会输出列表内全部字典的所有值,不符合只取首个字典的需求。
  • 调整后的版本逻辑错误:data[0]本身就是你要取的首个字典,直接遍历字典时,默认迭代返回的是字典的键(均为字符串类型),你再对字符串调用.values()方法,自然会抛出AttributeError: 'str' object has no attribute 'values'。
正确代码

不需要嵌套循环,直接取根列表的第一个元素,调用.values()遍历即可:

import json

with open('snakes.json') as json_file:
    data = json.load(json_file)

# 直接取首个字典的所有值遍历输出
for value in data[0].values():
    print(value)
可选优化

如果存在JSON文件根列表为空的可能,建议加非空校验,避免触发IndexError:

import json

with open('snakes.json') as json_file:
    data = json.load(json_file)

if data:
    first_dict_values = list(data[0].values())
    for v in first_dict_values:
        print(v)
else:
    print("解析完成,根列表无有效数据")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 02:57:20