我正在使用 python。 我如何先按“天”然后按“工作”对下面的词典列表进行排序。
'job' 的排序需要基于 priority_list(不是按字母顺序):
priority_list= ['c','a','b']
my_list_of_dicts = [
{'day':5,'job':'c','irrelevant_key':'more stuff'},
{'day':1,'job':'a','irrelevant_key':'stuff'},
{'day':5,'job':'b','irrelevant_key':'more stuff'},
{'day':1,'job':'b','irrelevant_key':'other stuff'}
]
排序结果应该是:
[{'day':1,'job':'a','irrelevant_key':'stuff'},
{'day':1,'job':'b','irrelevant_key':'other stuff'},
{'day':5,'job':'c','irrelevant_key':'more stuff'},
{'day':5,'job':'b','irrelevant_key':'more stuff'}]
非常感谢,
请您参考如下方法:
my_list_of_dicts.sort(key=lambda x: (x['day'], priority_list.index(x['job'])))
