python - 在 Python 中对列表求和 - 在一个元组和另一个列表中
问题描述
不确定它是否是重复的-如果是,将删除,只是还没有找到适合这种特定情况的。我有一个充满元组的复杂列表,其中包含字符串和列表。
我需要用 int 值替换最深的列表,这是这些列表的总和。我已经尝试了六种循环组合来解决它 - 似乎没有任何效果。
[('MED', [1, 1]), ('COP', [3, 1]), ('GRO', [1, 5]), ('RRE', [5, 3]), ('PRO', [4, 6])]
需要变成:
[('MED', 2), ('COP', 4), ('GRO', 6), ('RRE', 8), ('PRO', 10)]
这样我就可以返回按总和列表的值排序的新列表组合。
解决方案
您可以使用以下内容进行简洁易读的理解:
[(abbr, sum(t)) for abbr, t in l]
结果:
[('MED', 2), ('COP', 4), ('GRO', 6), ('RRE', 8), ('PRO', 10)]
推荐阅读
- excel - 范围复制不复制?
- javascript - 我无法从 steem API 中获得除热门新趋势之外的任何其他类别的 Steemit 帖子
- c# - 如何轻松地将数据限制为实体框架核心身份中的登录用户
- node.js - 有没有办法从 React UI 开始 Mocha 测试?
- php - 如何在 html 表格的可点击行中发送数据
- raku - 如何推入数组的哈希键?
- javascript - 如何在 HTML 中调用 REST API
- javascript - referencing imported js code to imported elements
- perl - Perl optimizer question: Will the perl compiler optimize away all of these temporary variables?
- c - strcmp says seemingly identical string are not equal