参考:《流畅的Python》
- list.sort
特点:就地排序,不会把原列表复制一份,并未产生新的对象。
这也是该函数返回值为None的原因,Python的一个惯例:如果一个函数或方法对对象进行的是就地改动,那么它就应该返回None。
- 内置函数 sorted
特点:创建一个列表作为返回值,可以接受任何形式的可迭代对象作为参数,最终都将返回一个列表
不管是list.sort 还是 sorted ,都有两个可选的关键字参数:
1)reverse
默认值是False,如果被设置为 True ,则排序的序列里的元素将以降序输出
2) key
一个只有一个参数的函数,该函数会被作用在序列里的每个元素上。
例如,可以使用 key=str.lower 来实现忽略大小写的排序,也可以使用 key=len 进行基于字符串长度的排序。
这个参数的默认值是恒等函数,也就是默认用元素自己的值来排序
示例: