1. 程式人生 > >對列表中的多個字典的值進行排序

對列表中的多個字典的值進行排序

現在有一個列表,根據每個字典的值進行排序。 

dict_list = [{"ming": 87}, {"mei": 93}, {"hua": 68}, {"jon": 75}, {"ston": 100}, {"jack": 56}]

思路:我們可以將列表中的字典先放入到一個大字典中,對整個字典進行排序,在排序完成後,再轉換為列表包含字典的形式即可。

from operator import itemgetter


dict_list = [{"ming": 87}, {"mei": 93}, {"hua": 68}, {"jon": 75}, {"ston": 100}, {"jack": 56}]
mid_dict = {key: value for x in dict_list for key, value in x.items()}
mid_list = sorted(mid_dict.items(), key=itemgetter(1))
fin_list = [{x[0]: x[1]} for x in mid_list]

最終結果 fin_list 為:

執行結果