按日期排序列表Python

时间:2018-08-05 17:28:15

标签: python python-2.7 sorting

我的数据采用以下形式: [{'value': 2, 'year': u'2015'}, {'value': 4, 'year': u'2016'}, {'value': 3, 'year': u'2018'}, {'value': 0, 'year': u'2014'}, {'value': 0, 'year': u'2017'}]

我想按年份排序。你能帮忙吗?

2 个答案:

答案 0 :(得分:2)

您需要指定用于排序时进行比较的key函数:

my_data = sorted( my_data, key = lambda x : x["year"])

答案 1 :(得分:0)

您应该为此使用itemgetter

>>> from operator import itemgetter
>>> data = [{'value': 2, 'year': u'2015'}, {'value': 4, 'year': u'2016'}, {'value': 3, 'year': u'2018'}, {'value': 0, 'year': u'2014'}, {'value': 0, 'year': u'2017'}]
>>> result = sorted(data, key=itemgetter('year'))
>>> print(result)
[{'value': 0, 'year': '2014'}, {'value': 2, 'year': '2015'}, {'value': 4, 'year': '2016'}, {'value': 0, 'year': '2017'}, {'value': 3, 'year': '2018'}]