我不知道该怎么做: 我有一个 list 的 list 定义如下:
list=[[day,type,expense],[...]];
天数和费用为int,类型为string
我需要找出每天的最大费用。一个例子:
list=[[1,'food',15],[4,'rent', 50],[1,'other',60],[8,'bills',40]]
我需要对同一天的元素求和,找出开销最高的那一天。
结果应该是:
day:1, total expenses:75
请您参考如下方法:
defaultdict 不是同样简单吗?
import pprint
from collections import defaultdict
from operator import itemgetter
l = [[1, 'food', 15], [4, 'rent', 50], [1, 'other', 60], [8, 'bills', 40]]
d = defaultdict(int)
for item in l:
d[item[0]] += item[2]
pprint.pprint(dict(d))
print max(d.iteritems(), key=itemgetter(1))
结果:
{1: 75, 4: 50, 8: 40}
(1, 75)
