Python字典多值计数:统计指定值在字典中的出现次数
统计指定值在字典嵌套列表中的出现次数
针对这种值为列表的字典,要统计某个指定值的总出现次数,可以这么实现:
基础遍历写法
先遍历字典里的所有列表,逐个统计目标值的出现次数再累加:
# 示例目标字典 data = {'a': ['Sun', 'Jack'], 'b': ['John', 'Sun', 'Sarah']} # 获取用户输入的目标值 target_val = input("请输入要统计的值:") total_count = 0 # 遍历字典的所有列表值 for sub_list in data.values(): # 累加当前列表中目标值的出现次数 total_count += sub_list.count(target_val) print(total_count) # 输入'Sun'时输出2
简洁一行写法
用生成器表达式配合sum()直接完成统计:
total_count = sum(lst.count(target_val) for lst in data.values())
核心逻辑:data.values()取出字典里所有的列表元素,lst.count(target_val)计算单个列表内目标值的出现次数,最后通过sum()将所有列表的统计结果累加得到总次数。
内容的提问来源于stack exchange,提问作者poe41
相关产品推荐
相关产品推荐

