python - 如何从 Python 中的 aa 列表的不同列表中添加元组的数量?
问题描述
这就是我所拥有的(在 python 版本 3.7.4 中):
P= [[('Lista-A', 1), ('Lista-X', 1), ('Lista-Z', 4)], [('Lista-A', 2), ('Lista-X', 0), ('Lista-Z', 1)], [('Lista-A', 5), ('Lista-X', 1), ('Lista-Z', 0)], [('Lista-A', 0), ('Lista-X', 1), ('Lista-Z', 4)]]
我正在尝试将与“Lista-A”、“Lista-X”和“Lista-Z”相关的所有数字相加,这样我就可以得到类似的东西(只是一个包含相关数字总和的元组列表每个“Lista”):
[('Lista-A', 8), ('Lista-X', 3), ('Lista-Z', 9)]
我试过使用 for 循环,但我没有到达那里。
for lista in P:
for i in lista:
我不知道如何继续代码...有人可以帮助我吗?提前致谢!
解决方案
这应该工作
from collections import defaultdict
input = [[('Lista-A', 1), ('Lista-X', 1), ('Lista-Z', 4)], [('Lista-A', 2), ('Lista-X', 0), ('Lista-Z', 1)], [('Lista-A', 5), ('Lista-X', 1), ('Lista-Z', 0)], [('Lista-A', 0), ('Lista-X', 1), ('Lista-Z', 4)]]
d = defaultdict(int)
for i in input:
for j in i:
d[j[0]] += j[1]
res = list(d.items())
推荐阅读
- xpath - SoapUI 中的查询匹配不适用于正确的 Xpath
- c# - Lambda 表达式中的条件
- javascript - Angular RxJs Observable 避免请求,直到我得到先前的响应
- javascript - 使用增量内部循环不会返回预期结果
- reactjs - AWS 中的 403 OPTIONS Cors 错误,预检请求
- html - 如何调整左div边框
- angular6 - 预填充 Angular 材质选择具有分组
- postgresql - CMD 无法运行 .exe 并且在代码块中包含外部库 不使用构建选项
- python - Python多线程套接字服务器无法接收来自2个用户的消息
- javascript - 如何从数组 1 中删除项目并将项目推送到数组 2