python字典排序浅析介绍

目录

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])

排序结果:

python字典排序浅析介绍

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\']))

排序结果:

python字典排序浅析介绍

python字典排序浅析介绍

python字典排序浅析介绍

python字典排序浅析介绍

2-4 说明

以列表里面的每一个字典元素作为匿名函数的参数,然后根据需要用键取字典里面的元素作为排序的条件,如x[‘name’]即用name键对应的值来排序。

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容