1.语法规则
1-1 代码实例
sorted(iterable, key=None,reverse=False)
1-2 参数说明
(1)iterable:代表的是可迭代的对象。
(2)key=None:用来进行比较的元素,具体的值来源于可迭代的对象中。
(3)reverse=False:排序规则,reverse=False升序(默认),reverse=True降序。
2.对字典排序
2-1 简单示例
# 字典排序
entity_dict = {'金日成': 1,'西班牙': 4,'碧月珠': 1}
# 按照字典的值进行排序
entity_dict_1 = sorted(entity_dict.items(), key=lambda x: x[1])
# 按照字典的键进行排序
entity_dict_2 = sorted(entity_dict.items(), key=lambda x: x[0])
排序结果:
2-2 说明
以entity_dict.items()返回的列表中的每一个元素,作为匿名函数(lambda)的参数,x[0]即用“键”排序,x[1]即用“值”排序;返回结果为新的列表,可以通过dict()函数转为字典格式。
2-3 复杂示例
entity_dict = [{'name': '金日成', 'count': 1}, {'name': '西班牙','count':4}, {'name': '碧月珠', 'count': 2},{'name': '金日成', 'count': 6}]
#按name排序
entity_dict_1 = sorted(entity_dict, key=lambda x: x['name'])
#按count降序排序
entity_dict_2 = sorted(entity_dict, key=lambda x: x['count'], reverse=True)
#name相同按count降序排序
entity_dict_3 = sorted(entity_dict, key=lambda x: (x['name'], -x['count']))
排序结果:
2-4 说明
以列表里面的每一个字典元素作为匿名函数的参数,然后根据需要用键取字典里面的元素作为排序的条件,如x[‘name’]即用name键对应的值来排序。
到此这篇关于python字典排序浅析介绍的文章就介绍到这了,更多相关python字典排序内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!