有一个list:
[
{'time':2016,'t':'jsaidja'},
{'time':2016,'t':'wtfja'},
{'time':2016,'t':'cbsasja'},
{'time':2015,'t':'45gj'},
{'time':2015,'t':'gt43ga'}
]
如何转换成
{
2016:['jsaidja','wtfja','cbsasja'],
2015:['45gj','gt43ga']
}
PHPz2017-04-18 09:16:12
提供另外一种方法:
from itertools import groupby
source = [
{'time': 2016, 't': 'jsaidja'},
{'time': 2016, 't': 'wtfja'},
{'time': 2016, 't': 'cbsasja'},
{'time': 2015, 't': '45gj'},
{'time': 2015, 't': 'gt43ga'}
]
result = {}
for time, g in groupby(sorted(source, key=lambda s: s['time']), key=lambda s: s['time']):
result[time] = [e['t'] for e in g]
print result