按照字典列表中某个key对应的value进行排序:
data = [{'file_name': 'Anexa5.2_19.jpg',
'width': 596,
'id': 19960,
'height': 842,
'license': 1},
{'file_name': '156208939_31.jpg',
'width': 612,
'id': 4768,
'height': 792,
'license': 1},
{'file_name': 'pone.0038031.s001_1.jpg',
'width': 612,
'id': 67519,
'height': 792,
'license': 1}]
temp_list = sorted(data['images'], key=lambda x: x.get("id"))
对列表中的字典按照字典中的某个value值进行排序
可给定列表,按照列表的顺序进行排序
list1 = ['小红','小绿','小白','小黑']
list2 = [{"name":"小黑"},{"name":"小绿"},{"name":"小红"},{"name":"小白"}]
r = sorted(list2, key=lambda x: list1.index(x.get("name")))
print(r)
[{"name":"小红"},{"name":"小绿"},{"name":"小白"},{"name":"小黑"}]
给定字典的key列表,将字典按列表顺序给字典key进行排序
list1 = ['小红','小绿','小白','小黑']
dict1 = {'小黑':4,'小红':1,'小绿':2,'小白':3}
order_dict1 = dict(sorted(dict1.items(), key=lambda x: list1.index(x[0])))
print(order_dict1)
{'小红': 1, '小绿': 2, '小白': 3, '小黑': 4}