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

Python实现get_data函数从字典列表提取指定Key对应属性值

Python get_data函数问题修复方案

现有代码问题梳理

  • 循环变量和参数key重名,覆盖了传入的属性名参数
  • 循环体内直接执行return,遍历第一个元素就退出函数,无法收集全部结果
  • 调用函数时传入的第二个参数是错误的空列表,没有传入实际要提取的属性名字符串
  • 冗余的main函数无实际作用,可以删除

修复后的完整代码

list_1 = [
    {'name': 'Jerome', 'weight': 3.38, 'wingspan': 49.96, 'length': 19.75},
    {'name': 'Ibraheem', 'weight': 3.08, 'wingspan': 50.59, 'length': 20.6},
    {'name': 'Tiana', 'weight': 0.81, 'wingspan': 47.86, 'length': 17.94},
    {'name': 'Lucas', 'weight': 3.33, 'wingspan': 48.27, 'length': 18.77},
    {'name': 'Rickie', 'weight': 4.4, 'wingspan': 51.0, 'length': 20.34}
]

def get_data(data, key):
    # 初始化结果列表
    result = []
    # 遍历字典列表中的每个字典,循环变量不与参数key重名
    for item in data:
        # 提取对应属性值加入结果列表
        result.append(item[key])
    return result

# 测试示例1
print(get_data(list_1, "name"))
# 输出:['Jerome', 'Ibraheem', 'Tiana', 'Lucas', 'Rickie']

# 测试示例2
print(get_data(list_1, "weight"))
# 输出:[3.38, 3.08, 0.81, 3.33, 4.4]

简化写法(可选)

可以直接用列表推导式实现相同功能,代码更简洁:

def get_data(data, key):
    return [item[key] for item in data]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 09:36:05