您好,登錄后才能下訂單哦!
本文研究的主要是Python中sort和sorted函數(shù)的相關(guān)內(nèi)容,具體如下。
一、sort函數(shù)
sort函數(shù)是序列的內(nèi)部函數(shù)
函數(shù)原型:
L.sort(cmp=None, key=None, reverse=False)
函數(shù)作用:
它是把L原地排序,也就是使用后并不是返回一個有序的序列副本,而是把當(dāng)前序列變得有序
參數(shù)說明:
(1) cmp參數(shù)
cmp接受一個函數(shù),拿整形舉例,形式為:
def f(a,b): return a-b
如果排序的元素是其他類型的,如果a邏輯小于b,函數(shù)返回負數(shù);a邏輯等于b,函數(shù)返回0;a邏輯大于b,函數(shù)返回正數(shù)就行了
(2) key參數(shù)
key也是接受一個函數(shù),不同的是,這個函數(shù)只接受一個元素,形式如下
def f(a): return len(a)
key接受的函數(shù)返回值,表示此元素的權(quán)值,sort將按照權(quán)值大小進行排序
(3) reverse參數(shù)
接受False 或者True 表示是否逆序
sort舉例:
(1)按照元素長度排序
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}] def f(x): return len(x) sort(key=f) print L
輸出:
[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]
(2)按照每個字典元素里面key為1的元素的值排序
L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}] def f2(a,b): return a[1]-b[1] L.sort(cmp=f2) print L
輸出:
[{1: 1, 2: 4, 5: 6}, {1: 3, 6: 3}, {1: 5, 3: 4}, {1: 9}]
二、sorted函數(shù)
sorted函數(shù)是內(nèi)建函數(shù),他接受一個序列,返回有序的副本
他與sort的唯一區(qū)別就是會返回副本
總結(jié)
以上就是本文關(guān)于Python sort sorted函數(shù)代碼解析的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。