from itertools import groupby
from operator import itemgetter
res = []
for k,v in groupby(sorted(d.items(),key=itemgetter(1)),key=itemgetter(1)):
v = list(v)
mx = max(v,key=lambda x:len(x[0]))
res += [x for x in v if len(x[0]) == len(mx[0])]
res.sort()
for k,v in res:
print(k,v)
('/a/b/c/d', [10, 22, 12])
('/e/f/h/i', [11, 28, 16])
('/j/k/l/m', [10, 22, 12])
相关问题 更多 >
编程相关推荐