对列表中的字典按照字典中的某个value值进行排序
list1 = [{"id":3},{"id":1},{"id":2}]
r = sorted(list1, key=lambda x: x.get("id")))
print(r)
[{"id":1},{"id":2},{"id":3}]
对列表中的字典按照字典中的某个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}