python將list排序的方法有哪些-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動(dòng)態(tài)BGP香港云服務(wù)器提供商,新人活動(dòng)買多久送多久,劃算不套路!

站在用戶的角度思考問題,與客戶深入溝通,找到沙縣網(wǎng)站設(shè)計(jì)與沙縣網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名與空間、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋沙縣地區(qū)。

小編給大家分享一下python將list排序的方法有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

python提供了對list排序的兩種方法

1、使用list內(nèi)建函數(shù)sort排序

list.sort(key=None,reverse=False)

eg:

In [57]: l=[27,47,3,42,19,9]
In [58]: l.sort()
In [59]: l
Out[59]: [3, 9, 19, 27, 42, 47]

上面這種是直接對l列表里面的元素排序,sort()函數(shù)還提供了一個(gè)key參數(shù),這個(gè)參數(shù)的值是一個(gè)函數(shù),這個(gè)函數(shù)只能有一個(gè)返回值,且返回值用來進(jìn)行比較。 這個(gè)技術(shù)是快速的因?yàn)閗ey指定的函數(shù)將準(zhǔn)確地對每個(gè)元素調(diào)用。

In [53]: L = [('b',6),('a',1),('c',3),('d',4)]
In [54]: L.sort(key=lambda x:x[1])
In [56]: L
Out[56]: [('a', 1), ('c', 3), ('d', 4), ('b', 6)]

上面那段話,再結(jié)合這個(gè)例子,我是這樣理解的:匿名函數(shù)lambda x:x[1]相當(dāng)于:

def f(x):
    return x[1]

key參數(shù)接受列表L里的每個(gè)元素的第二個(gè)參數(shù),根據(jù)第二個(gè)參數(shù)的排序,確定整體的排序。也就是說,設(shè)置了key參數(shù)后,key接收的值代表了整體,排序的標(biāo)準(zhǔn)就變成了對key所接收的值進(jìn)行排序。

2、使用python內(nèi)置函數(shù)sorted排序

sorted方法和sort方法很相似,不同的是,sorted不改變原來的列表,并返回一個(gè)排好序的列表。而list.sort()是改變了原有的列表。還有就是,list.sort()只能對列表排序,而sorted()可以對其他數(shù)據(jù)結(jié)構(gòu)排序。

In [62]: l=[27,47,3,42,19,9]
In [63]: sorted(l)
Out[63]: [3, 9, 19, 27, 42, 47]

sorted方法同樣可以用key參數(shù),用法也是一樣的。

In [68]: data=[{'name':'Abbie','score':99},{'name':'Ivy','score':80}]
In [69]: sorted(data,key=lambda x:x['score'])
Out[69]: [{'name': 'Ivy', 'score': 80}, {'name': 'Abbie', 'score': 99}]

以上是python將list排序的方法有哪些的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!

網(wǎng)頁題目:python將list排序的方法有哪些-創(chuàng)新互聯(lián)
URL標(biāo)題:http://www.muchs.cn/article22/dppocc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司、標(biāo)簽優(yōu)化定制開發(fā)、網(wǎng)站制作網(wǎng)站內(nèi)鏈、品牌網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)