2

蟒蛇新手!这是我在 python 中的字典列表:

[{'amt': 400, 'name': 'whatever1'}, {'amt': 300, 'name': 'whatever3'}, {'amt': 500, 'name': 'whatever2'}]

我想在不使用完整的 for 循环的情况下将所有“amt”添加在一起。有任何想法吗?

4

3 回答 3

9
sum(L['amt'] for L in list_of_dicts)

应该这样做。

于 2012-05-24T00:53:59.383 回答
1
from operator import itemgetter
from itertools import imap
sum(imap(itemgetter('amt'), your_list))
于 2012-05-24T01:16:29.543 回答
0

另一种方式:

>>> LofD=[{'amt': 400, 'name': 'whatever1'}, {'amt': 300, 'name': 'whatever3'}, {'amt': 500, 'name': 'whatever2'}]
>>> SumofAmt=0
>>> for each in LofD:
...    SumofAmt+=each['amt']
... 
>>> SumofAmt
1200
于 2012-05-24T01:33:59.300 回答