商城首页欢迎来到中国正版软件门户

您的位置:首页 >Python字典列表按键提取值方法

Python字典列表按键提取值方法

  发布于2026-01-31 阅读(0)

扫一扫,手机访问

如何从字典列表中按键提取所有对应值

本文介绍在 Python 中如何高效地从包含多个字典的列表中,按指定键批量提取所有值,并生成独立的值列表。

当处理结构化数据(如 API 响应、JSON 解析结果或数据库查询记录)时,我们常遇到形如 data = [{'name': 'Alessandra', 'age': 24}, {'name': 'Sasha', 'age': 37}, {'name': 'Jason', 'age': 42}] 的字典列表。若需将相同键(如 'name'、'age')下的所有值分别聚合为独立列表,最简洁、Pythonic 的方式是使用列表推导式

data = [{'name': 'Alessandra', 'age': 24}, {'name': 'Sasha', 'age': 37}, {'name': 'Jason', 'age': 42}]

names = [item['name'] for item in data]
ages = [item['age'] for item in data]

print(names)  # ['Alessandra', 'Sasha', 'Jason']
print(ages)   # [24, 37, 42]

优势说明

  • 简洁高效,无需导入额外模块;
  • 时间复杂度为 O(n),一次遍历即可完成提取;
  • 可读性强,语义清晰(“对每个字典取其 name 值”)。

⚠️ 注意事项

  • 若字典中可能缺失目标键(如某项无 'age'),直接访问 item['age'] 会触发 KeyError。此时建议改用 item.get('age')(返回 None)或提供默认值:item.get('age', 0);
  • 如需动态提取多个键,可封装为函数提升复用性:
def extract_values(data_list, key):
    return [d.get(key) for d in data_list]

names = extract_values(data, 'name')
ages = extract_values(data, 'age')

总结:列表推导式是提取字典列表中同键值的标准解决方案,兼顾性能与可维护性;配合 .get() 方法可进一步增强健壮性,适用于真实场景中的不完全数据。

本文转载于:互联网 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注