sorted
说明:
其实python有一个列表专用排序函数sort(),它是用c语言写的,效率极高,对于数值型列表排序首选,它在原列表基础上操作,返回排序好的原列表。但python有一个内置高阶函数sorted(),用法上与sort()类似,但功能更强大,应用更广泛!理论上能对所有可迭代对象进行复杂排序,返回原可迭代对象的列表副本(总是返回列表),原对象不变。
语法:
sorted(iterable,key=None,reverse=False) →list
例子:
1,一般排序。
from random import randint
#随机生成一个从正20到负20的10个对象的列表
a =[randint(-20,20) for _ in range(10)]
sorted(a)
→默认返回一个从小到大的正序列表
2,逆序
sorted(a,reverse=True)
→返回一个从大到小逆序列表
3,按指定函数排序
a =[('a','boy',11),('b','girl',13),('c','boy',12)]
sorted(a,kay=lambda x:x[2],reverse=True)
→[('b','girl',13),('c','boy',12),('a','boy',11)]
4,字符串排序(按字符串的ASCII码排席)
a =['周','张','陈','李','王']
sorted(a,reverse=True)
→['陈', '王', '李', '张', '周']