python將list排序的方法有哪些

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

網站建設哪家好,找成都創(chuàng)新互聯公司!專注于網頁設計、網站建設、微信開發(fā)、小程序開發(fā)、集團企業(yè)網站建設等服務項目。為回饋新老客戶創(chuàng)新互聯還提供了洮北免費建站歡迎大家使用!

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

1、使用list內建函數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()函數還提供了一個key參數,這個參數的值是一個函數,這個函數只能有一個返回值,且返回值用來進行比較。 這個技術是快速的因為key指定的函數將準確地對每個元素調用。

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)]

上面那段話,再結合這個例子,我是這樣理解的:匿名函數lambda x:x[1]相當于:

def f(x):
    return x[1]

key參數接受列表L里的每個元素的第二個參數,根據第二個參數的排序,確定整體的排序。也就是說,設置了key參數后,key接收的值代表了整體,排序的標準就變成了對key所接收的值進行排序。

2、使用python內置函數sorted排序

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

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

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

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排序的方法有哪些的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創(chuàng)新互聯行業(yè)資訊頻道!

新聞名稱:python將list排序的方法有哪些
文章鏈接:http://muchs.cn/article4/ghjcie.html

成都網站建設公司_創(chuàng)新互聯,為您提供服務器托管、網站改版、網站設計公司、App開發(fā)靜態(tài)網站、網站制作

廣告

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

成都定制網站網頁設計