python是新的!下面是我在Python字典的名單:在python中添加數字,數字是從字典列表中提取的
[{'amt': 400, 'name': 'whatever1'}, {'amt': 300, 'name': 'whatever3'}, {'amt': 500, 'name': 'whatever2'}]
我想所有的「AMT」加在一起,而無需使用完整的for循環。有任何想法嗎?
python是新的!下面是我在Python字典的名單:在python中添加數字,數字是從字典列表中提取的
[{'amt': 400, 'name': 'whatever1'}, {'amt': 300, 'name': 'whatever3'}, {'amt': 500, 'name': 'whatever2'}]
我想所有的「AMT」加在一起,而無需使用完整的for循環。有任何想法嗎?
from operator import itemgetter
from itertools import imap
sum(imap(itemgetter('amt'), your_list))
另一種方式:
>>> LofD=[{'amt': 400, 'name': 'whatever1'}, {'amt': 300, 'name': 'whatever3'}, {'amt': 500, 'name': 'whatever2'}]
>>> SumofAmt=0
>>> for each in LofD:
... SumofAmt+=each['amt']
...
>>> SumofAmt
1200
不太適合問題的'不使用完整的for循環'部分。 – Darthfett
你爲什麼要這麼做?你認爲它會更有效率嗎?你想讓它看起來比顯而易見的方式更神祕嗎? – msw
那麼對於'pyton'來說,你還不能拼出它呢? – mhawke