sorted
sorted(__iterable,key,reverse),可以携带三个参数
1.可迭代对象
2.排序的key
3.升降序
一维数组
# 不加参数,默认升序排列
>>>s = [5,3,4,1,2]
sorted(s)
[1, 2, 3, 4, 5]
# 加reverse=True,降序排列
sorted(s, reverse=True)
[5, 4, 3, 2, 1]
二维数组的任意排序
>>>s = [[4,5,6,'d'],[1,3,2,'a'],[6,7,8, 'b'], [9,3,2,'c']]
# sorted默认对列表元素的第一个值进行升序排列
>>>sorted(s)
[[1, 3, 2, 'a'], [4, 5, 6, 'd'], [6, 7, 8, 'b'], [9, 3, 2, 'c']]
# 思考,如果我们想对元素第四列的a,b,c,d进行排序,一行代码教你简单实现
>>>sorted(s, key=lambda x:x[3])
[[1, 3, 2, 'a'], [6, 7, 8, 'b'], [9, 3, 2, 'c'], [4, 5, 6, 'd']]
同理,我想对第二列进行排序
>>>sorted(s, key=lambda x:x[1])
[[1, 3, 2, 'a'], [9, 3, 2, 'c'], [4, 5, 6, 'd'], [6, 7, 8, 'b']]
字典排序
# 默认是对键进行排序
>>>s = {'c':1,'b':2,'a':3}
>>>sorted(s)
['a', 'b', 'c']
# 对value进行排列
>>>sorted(s.items(),key=lambda x:x[1], reverse=True)
[('a', 3), ('b', 2), ('c', 1)]