python 排序
sorted() 函数对所有可迭代的对象进行排序操作。
语法:sorted(iterable, cmp=None, key=None, reverse=False)
sort 与 sorted 区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
示例:
>>>a = [5,7,6,3,4,1,2] >>> b = sorted(a) # 保留原列表 >>> a [5, 7, 6, 3, 4, 1, 2] >>> b [1, 2, 3, 4, 5, 6, 7] >>>a = [5,7,6,3,4,1,2] >>> b = a.sort() >>> b >>> a [1, 2, 3, 4, 5, 6, 7]
sorted使用方法实例:
>>>ll=[('a',0),('b',3),('c',1),('b',1)]
>>> sorted(ll,key=lambda x:x[1]) // 按照x[1]排序
[('a', 0), ('c', 1), ('b', 1), ('b', 3)]
>>>sorted(ll,key=lambda x:(x[1],x[0])) // 先按照x[1]排序,再按照x[0]排序
[('a', 0), ('b', 1), ('c', 1), ('b', 3)]