如何在循环中对多个列表的元素求和?
how to sum elements of multiple lists in a loop?
我有一个元组列表,其第二个元素是一个列表:
[(1, [1]), (2, [1]), (3, [1]), (4, [1, 2]), (5, [1]), (6, [1, 2, 3]), (7, [1]), (8, [1, 2, 4]), (9, [1, 3]), (10, [1, 2, 5])]
我想用它们的总和结果替换这些列表。
[(1, 1), (2, 1), (3, 1), (4, 6), (5, 1), (6, 6), (7, 1), (8, 7), (9, 4), (10, 8)]
我怎样才能做到这一点?
我不知道该怎么做。我试过不成功:
ml = [(1, [1]), (2, [1]), (3, [1]), (4, [1, 2]), (5, [1]), (6, [1, 2, 3]), (7, [1]),
(8, [1, 2, 4]), (9, [1, 3]), (10, [1, 2, 5])]
s = 0
for el in ml:
s += el[1]
如果有人能提供帮助,我将不胜感激!
你是这个意思吗?
ml = [(1, [1]), (2, [1]), (3, [1]), (4, [1, 2]), (5, [1]), (6, [1, 2, 3]), (7, [1]),
(8, [1, 2, 4]), (9, [1, 3]), (10, [1, 2, 5])]
ml_sum = [(a, sum(b)) for a, b in ml]
print(ml_sum)
输出:
[(1, 1), (2, 1), (3, 1), (4, 3), (5, 1), (6, 6), (7, 1), (8, 7), (9, 4), (10, 8)]
如果你有一个包含元组的列表,你可以同时遍历这些元组的多个元素!
我有一个元组列表,其第二个元素是一个列表:
[(1, [1]), (2, [1]), (3, [1]), (4, [1, 2]), (5, [1]), (6, [1, 2, 3]), (7, [1]), (8, [1, 2, 4]), (9, [1, 3]), (10, [1, 2, 5])]
我想用它们的总和结果替换这些列表。
[(1, 1), (2, 1), (3, 1), (4, 6), (5, 1), (6, 6), (7, 1), (8, 7), (9, 4), (10, 8)]
我怎样才能做到这一点?
我不知道该怎么做。我试过不成功:
ml = [(1, [1]), (2, [1]), (3, [1]), (4, [1, 2]), (5, [1]), (6, [1, 2, 3]), (7, [1]),
(8, [1, 2, 4]), (9, [1, 3]), (10, [1, 2, 5])]
s = 0
for el in ml:
s += el[1]
如果有人能提供帮助,我将不胜感激!
你是这个意思吗?
ml = [(1, [1]), (2, [1]), (3, [1]), (4, [1, 2]), (5, [1]), (6, [1, 2, 3]), (7, [1]),
(8, [1, 2, 4]), (9, [1, 3]), (10, [1, 2, 5])]
ml_sum = [(a, sum(b)) for a, b in ml]
print(ml_sum)
输出:
[(1, 1), (2, 1), (3, 1), (4, 3), (5, 1), (6, 6), (7, 1), (8, 7), (9, 4), (10, 8)]
如果你有一个包含元组的列表,你可以同时遍历这些元组的多个元素!