【发布时间】:2026-01-30 15:45:02
【问题描述】:
在我的字典中,每个条目都有一个元组列表(我的python语法可能是错误的,请多多包涵)。它看起来像这样:
{1: [(2, 2), (4, 3), (6, 1), (7, 1), (8, 3)], 2: [(4, 1), (5, 3), (1, 2)],...}
我想对每个条目的元组中的第二个值求和,即:
{1: (10), 2: (5)...}
我一直在使用不同形式的
result = sum(y for v in dict.itervalues() for (x, y) in v)
但它会将两个条目的所有值相加。
【问题讨论】:
-
{k: sum(x for _, x in v) for k, v in dict.items()} -
请注意,值上的括号不会使其成为元组,与:
{1: 10, 2: 5...} -
@vauth 不错的答案!
-
@vaultah,你为什么不把这个作为一个真正的答案?
标签: python dictionary tuples