python用sorted排序,python的sort是什么排序
Python中的字典排序参考:新手教程
目的:总结Python中dict的排序功能,做个备忘录。
1错误的排序方法如果dict被直接扔进sorted:
key _ value={ } key _ value[2]=56 key _ value[1]=2 key _ value[5]=12 key _ value[4]=24 key _ value[6]=18 key _ value[3]=323 key _ value=sorted(key _ value
[1,2,3,4,5,6]顺序排好了,结果却变成了一串键。
2按键或值排序2.1按键排序key _ value={ } key _ value[2]=56 key _ value[1]=2 key _ value[5]=12 key _ value[4]=24 key _ value[6]=18 key _ value[3]=323 key _ value=dict(sorted(key _ value . items(),key=lambda x: x [0],reverse=false)) print (key _ value)得到以下结果:
{1: 2,2: 56,3: 323,4: 24,5: 12,6: 18}与第1节相比,有以下变化:
1.转换sorted的返回值,因为sorted返回列表数据类型。
2.被排序的对象是dict.items(),,而不是dict本身。
3.给定lambda函数,可以自由指定排序方法(默认情况下,也是按键排序)
3.反转参数,设置是否反转(默认为false,从小到大)
2.2 key _ value={ } key _ value[2]=56 key _ value[1]=2 key _ value[5]=12 key _ value[4]=24k key _ value[6]=18 key _ value[3]=323 key _ value=dict(sorted(key _ value . items(),key=lambda x: x [1],reverse=false)) print (key _ value)得到结果:
{1: 2,5: 12,6: 18,4: 24,2: 56,3: 323} 3自定义排序方法示例按key*value的值排序。
key _ value={ } key _ value[0]=0 key _ value[-1]=-1 key _ value[2]=2 key _ value[-3]=-3 key _ value[4]=4 key _ value[-5]=-5 key _ value=dict(sorted(key _ value . items(),key=lambda x: (x [0] * x [1]),reverse=false)) print (key _ value)得到以下结果:
{0: 0,-1:-1,2: 2,-3:-3,4: 4,-5:-5}自定义排序的方式取决于lambda函数的定义。
仅作为个人学习记录,以后可能会补充。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。