您可以使用itertools.groupby
:
>>> for key, group in itertools.groupby(mylist, lambda item: item["mc_no"]):
... print key, sum([item["tmst"] for item in group])
...
KA20 90.0
KA23 110.0
请注意,groupby
要正常工作,mylist
必须按分组键进行排序:
from operator import itemgetter
mylist.sort(key=itemgetter("mc_no"))