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

Python中如何用字典推导式计算两个字典同key对应值的商

错误原因

你编写的字典推导式中,取值时固定使用了s_lst[2]作为键,遍历全程都在计算两个字典同一个固定键的商,和当前遍历得到的键k没有关联,因此所有value都相同。

正确实现代码

如果两个字典的键完全匹配,直接遍历键取值即可:

stat_dict = {'good': 6537048, 'evil': 32000, 'neutral': 69467, 'nihilist': 81977, 'cool': 771180}
count_dict = {'good': 2, 'evil': 2, 'neutral': 2, 'nihilist': 2, 'cool': 2}

avg_dict = {k: stat_dict[k] / count_dict[k] for k in stat_dict}

运行后得到的结果符合预期:

{'good': 3268524.0, 'evil': 16000.0, 'neutral': 34733.5, 'nihilist': 40988.5, 'cool': 385590.0}

鲁棒性优化(可选)

如果无法保证两个字典的键完全一致,可以先取键的交集再计算,避免抛出KeyError:

avg_dict = {k: stat_dict[k] / count_dict[k] for k in stat_dict.keys() & count_dict.keys()}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 19:06:03