python sort、sorted
阿新 • • 發佈:2017-11-18
所有 ima getter 保持 參數 比較 們的 分享 .com
1.
(1).sorted()方法返回一個新列表(默認升序)。
list.sort()
(2).另一個不同:list.sort()方法僅被定義在list中,sorted()方法對所有的可叠代序列都有效。
2.key參數/函數
從python2.4開始,在list.sort()和sorted()增加了key參數,key在每個元素比較淺被調用。
例如:通過key指定的函數來忽略字符串大小寫:
通過復雜對象的某些值來對復雜對象的序列進行排序:
對擁有命名屬性的復雜對象進行排序:
3.Operator模塊函數
operator模塊有itemgetter, attrgetter,從2.6開始增加了methodcaller方法。
operator允許多級的排序:先以grade,再以age排序
4.升序和降序
list.sort()和sorted()都接受一個參數reverse(True or False)來表示升序或降序。
5.排序的穩定性和復雜性
多個元素有相同的key,則排序前後他們的先後順序不變。
註意:排序後"blue"的順序被保持住了,即(‘blue’, 1)在(‘blue‘, 2)的前面。
構建多個步驟進行更復雜的排序:對student數據先以grade降序排列,再以age升序排列
python sort、sorted