格式:
数据类型为列表,列表元素为字典。由字典组织的列表形式。
分析:
可以将列表中的字典先放入到一个大字典中,对整个字典进行排序,在排序完成后,再转换为列表包含字典的形式即可
现在有一个列表,根据每个字典的值进行排序。
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]
例子:T=[{'xgei-0/0/1/1': '9'}, {'xgei-0/0/1/2': '20'},{'xgei-0/0/1/15': '12'}]
def Sorted_listdict(dict_list ):
New_List=[]
New_D={}
mid_dict = {key: value for x in dict_list for key, value in x.items()} ###格式写法。列表与字典的结构
#print (mid_dict)
ordered_dict = OrderedDict(sorted(mid_dict.items(), key=lambda t: int(t[1]), reverse=True))
#print (type(ordered_dict),ordered_dict)
#<class 'collections.OrderedDict'> OrderedDict([('xgei-0/0/1/2', '20'), ('xgei-0/0/1/15', '12'), ('xgei-0/0/1/1', '9')])
for x in ordered_dict:
New_D[x]=mid_dict[x]
New_List.append(New_D)
print (New_List)
return New_List
1.sorted函数按key值对字典排序<