如何在嵌套的Python列表中添加数字

如何在嵌套的Python列表中添加数字,python,nested-lists,Python,Nested Lists,我有一张单子 [["Sunday", 7, 0], ["Sunday", 2, 0], ["Monday", 1, 5], ["Tuesday", 5, 0], ["Thursday", 2, 0], ["Friday", 3, 0], ["Friday", 1, 0], ["Saturday", 4, 0], ["Monday", 8, 0], ["Monday", 1, 0], ["Tuesday", 1, 0], ["Tuesday", 2, 0], ["Wednesday", 0, 5]

我有一张单子

[["Sunday", 7, 0], ["Sunday", 2, 0], ["Monday", 1, 5], ["Tuesday", 5, 0], ["Thursday", 2, 0], ["Friday", 3, 0], ["Friday", 1, 0], ["Saturday", 4, 0], ["Monday", 8, 0], ["Monday", 1, 0], ["Tuesday", 1, 0], ["Tuesday", 2, 0], ["Wednesday", 0, 5]]
我可以在列表中添加值以获得如下的总和吗

["I dont need this value", 37, 10]
这正是其目的:

In [4]: reduce(lambda x,y:['',x[1]+y[1],x[2]+y[2]], l)
Out[4]: ['', 37, 10]
其中
l
是您的列表


这只会遍历列表一次,自然会产生不同的——可能更复杂的——表达式来计算这三个术语。

我将列表分配给
l

l = [ your list .... ]
['dont needed', sum( [ x[1] for x in l ] ), sum(  [x[2] for x in l ] ) ]
结果:

['dont needed', 37, 10]

当然,最终:

>>> stuff=[["Sunday", 7, 0], ["Sunday", 2, 0], ["Monday", 1, 5], ["Tuesday", 5, 0], ["Thursday", 2, 0], ["Friday", 3, 0], ["Friday", 1, 0], ["Saturday", 4, 0], ["Monday", 8, 0], ["Monday", 1, 0], ["Tuesday", 1, 0], ["Tuesday", 2, 0], ["Wednesday", 0, 5]]
>>> stuff=zip(*stuff)
>>> map(sum,stuff[1:])
[37, 10]

对于每个项目灵活的值数量和更少的字符,可以使用

In [1]: [sum(values) for values in zip(*l)[1:]]
Out[1]: [37, 10]

zip
生成对应项组合的元组(即包含所有第一项的元组、包含所有第二项的元组等),每个元组可以求和(除了第一个字符串值)。当然,如果需要,您仍然可以在开始时预先编写
或任何您喜欢的内容。

我认为
100
60
只是一些任意示例,而不是你在问题列表中期望的实际结果?是的,这些是任意数字。如果你不介意,我想再问你一个问题,无论是聊天还是其他什么。为什么不在这里问你的问题,这样每个人都可以参与?
In [1]: [sum(values) for values in zip(*l)[1:]]
Out[1]: [37, 10]