【发布时间】:2019-06-26 23:27:29
【问题描述】:
我有一个如下所示的嵌套列表:
nested = [['a', 1], ['v', 2], ['a', 5], ['v', 3]]
我想为列表中的每个字母值对嵌套列表中的值求和,以便输出如下所示:
[['a', 6], ['v', 5]]
我尝试过使用 for 循环,但找不到解决方案。
【问题讨论】:
标签: python
我有一个如下所示的嵌套列表:
nested = [['a', 1], ['v', 2], ['a', 5], ['v', 3]]
我想为列表中的每个字母值对嵌套列表中的值求和,以便输出如下所示:
[['a', 6], ['v', 5]]
我尝试过使用 for 循环,但找不到解决方案。
【问题讨论】:
标签: python
可能有一个使用reduce 和list comp 的衬里,但我不能很快看到它。
nested = [['a', 1], ['v', 2], ['a', 5], ['v', 3]]
from collections import defaultdict
d = defaultdict(int)
for i in nested:
d[i[0]] += i[1]
retval = []
for k, v in d.items():
retval.append([k, v])
print(retval) # [['a', 6], ['v', 5]]
【讨论】: