python排序主要用列表的sort方法和sorted函數。python
sort
List的方法
使用採用的是混合(hybrid)排序,規模小的時候採用binary insertion,規模大的時候採用samplesort
在原位置(改變原始列表)對列表進行排序
高級用法:
L.sort(cmp=None, key=None, reverse=False)
cmp(x, y) -> -1, 0, 1 比較函數:x<y 返回-1,x=y返回0,x>y返回1。在py3.0中被移除了。
key 鍵函數:指定排序的對象
reverse 布爾值:反轉排序結果爲true,不反轉爲false
cmp和key常用Lambda表達式ide
根據python cookbook,須要排序的時候儘可能使用sort方法。函數
sorted
內置函數
對任何可迭代對象排序,返回一個新的結果列表(不改變原始對象)
高級用法:
sorted(iterable, cmp=None, key=None, reverse=False)
iterable 可迭代對象
其餘參數與sort相同對象