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

如何遍历嵌套字典Data,获取所有event_dict中的event_id值

获取嵌套字典中所有event_id的值

你可以通过两层遍历实现需求:先遍历外层字典的用户数据,再遍历每个用户的事件字典,提取event_id字段。以下是两种实现方式:

方式一:常规循环(可读性高)

# 初始化空列表存储所有event_id
all_event_ids = []

# 遍历Data中的每个用户条目
for user_info in Data.values():
    # 获取当前用户的事件字典
    events = user_info['event_dict']
    # 遍历每个事件,提取event_id
    for event_details in events.values():
        all_event_ids.append(event_details['event_id'])

# 输出结果
print(all_event_ids)

方式二:列表推导式(简洁高效)

如果追求代码简洁,可以用嵌套列表推导式一行完成:

all_event_ids = [event['event_id'] for user in Data.values() for event in user['event_dict'].values()]
print(all_event_ids)

两种方式最终都会输出所有event_id的集合:
['01', 'T', 's', 'p', 'abc', 'def', 'ghi', 'jkl']

扩展:保留用户与事件的对应关系

如果需要区分每个用户对应的event_id,可以修改代码记录用户信息:

user_event_map = {}
for user_idx, user_info in Data.items():
    user_event_map[user_info['name']] = [event['event_id'] for event in user_info['event_dict'].values()]
print(user_event_map)

输出结果:

{'John': ['01', 'T', 's', 'p'], 'Henry': ['abc', 'def', 'ghi', 'jkl']}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 22:03:31