sorted是python的内置函数吗_python内置函数 sorted

sorted(iterable, cmp=None, key=None, reverse=False) 在python3.0中cmp参数被删除了

1.sorted()内置函数返回一个新的序列,它可以对任何iterable对象排序

list.sort() 没有返回值,它对原来的序列进行排序,这个函数只是用list

>>>L=[45,32,97,68,23,31]

>>>L.sort()

[23,31,32,45,68,97]

>>>L

[23,32,32,45,68,97]

>>>S = [45,32,97,68,23,31]

>>>res = sorted(S)

>>>res

[23,31,32,45,68,97]

>>>S

[45,32,97,68,23,31]

2.key参数是一个函数,这个函数作用于iterable对象的每一个元素,返回一个值,sorted函数根据返回的值对iterable进行排序

>>>rest = [('jhon', 'A', 23),

('mary', 'C', 34),

('Bob', 'B', 13)

]

>>>res=sorted(rest, key=lambda x: x[1]) #以成绩排序

>>>res

[('jhon','A',23),('Bob','B',13),('mary','C',34)]

>>>res=sorted(rest, key=lambda x: x[2]) #以年龄排序

[('Bob','B',13),('jhon','A',23),('mary','C',34)]

对list中的字典进行排序

rest = [

{'name':'lucy', 'age': 22, 'grade':90},

{'name':'ham', 'age':34, 'grade':78},

{'name':'blus', 'age':18, 'grade': 89}

]

sorted(rest, key=lambda x: x.get('name','')) #以 name 来排序

sorted(rest, key=lambda x: x.get('grade','')) #以 grade 来排序

对字典进行排序:

rest ={

'1':{'name':'Lucy', 'age':67},

'2':{'name':'Spam', 'age':12},

'3':{'name':'Bob', 'age':34},

'4':{'name':'Joe', 'age':27}

}

rest = sorted(rest.items(), key=lambda x: x[1].get('age',' '), reverse=True) #以age降序排列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值