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

Python 3.4中如何遍历字典列表并打印指定键的对应值?

解决字典列表的信息提取问题

嘿,作为Python 3.4的新手,碰到遍历字典列表提取信息的问题完全不用慌——这是Python处理数据时非常常见的场景,我来一步步给你讲清楚怎么操作!

基础遍历与提取

首先,你的parts是一个包含字典的列表,每个字典里有多个键值对。要提取指定信息,最直接的方式就是用for循环逐个遍历列表里的字典,然后通过键名来获取对应的值。

比如假设你想提取每个元素的id、state和vendor信息,可以这么写:

# 遍历parts列表
for item in parts:
    # 通过键名获取对应值,注意键名要和字典里的完全一致
    item_id = item['id']
    item_state = item['state']
    item_vendor = item['vendor']
    # 这里可以根据需求处理提取到的数据,比如打印或者存入新列表
    print(f"ID: {item_id}, State: {item_state}, Vendor: {item_vendor}")

提取并保存到新列表

如果想把提取的信息整理成一个新的列表(方便后续处理),可以用列表推导式,Python 3.4完全支持这个语法:

# 提取所有元素的id和state,组成新的字典列表
extracted_info = [{'id': item['id'], 'state': item['state']} for item in parts]

# 或者提取成元组列表
extracted_tuples = [(item['id'], item['state'], item['vendor']) for item in parts]

带条件筛选的提取

要是你只需要满足特定条件的元素信息(比如只提取state为ALIVE的条目),可以在遍历里加上条件判断:

# 只提取状态为ALIVE的元素的id和type_name
alive_parts = [{'id': item['id'], 'type_name': item['type_name']} for item in parts if item['state'] == 'ALIVE']

注意事项

  • 确保你要提取的键名在每个字典里都存在,如果有缺失的情况,建议用item.get('键名', 默认值)来避免报错,比如item.get('weight', 'unknown'),这样即使某个字典没有weight键,也会返回unknown而不是抛出KeyError。
  • 你的示例字典里有个小语法错误:'type_id': 'shiftable'后面少了个逗号,实际代码里要修正这个问题,不然会报错哦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 08:18:52