sorted() :排序函数
语法:sorted(Iterable, key=None, reverse=False)
Iterable: 可迭代对象
key: 排序规则(函数),在sorted内部会把可迭代对象中的每一个元素传递给这个函数,然后根据函数的运算结果进行排序
reverse: reverse = True 降序 , reverse = False 升序(默认)
用法一: sorted(可迭代对象)
lst = [3,2,6,4,9,7,1,23,4] new_lst = sorted(lst) print(new_lst) #返回的新列表是经过排序的
[1,2,3,4,4,6,7,9,23]
用法二: 和函数组合使用
# 根据字符串?度进?排序 lst = [‘博客园‘, ‘随笔‘, ‘今天是星期二‘, ‘嘿‘] def func(s): # 计算字符串?度 return len(s) print(sorted(lst, key=func)) #将列表每一个字符串传递给func 计算结果返回
[‘嘿‘,‘随笔‘,‘博客园‘,‘今天是星期二‘]
用法三 :和lambda组合使用
#根据列表中每个字符串中a的数量排序 lst = [‘ada‘, ‘afdf‘, ‘asdasdsasda‘, ‘asdasdf‘, ‘sss‘] l = sorted(lst, key=lambda s: s.count(‘a‘),reverse=True) # 内部,把可迭代对象中的每一个元素传递给func ,
print(l)
[‘asdasdsasda‘,‘asdasdf‘,‘ada‘,‘afdf‘,‘sss‘]
原文:https://www.cnblogs.com/vicoyoung1114/p/12402260.html