list排序方法python_python将list排序的方法有哪些
python將list排序的方法有哪些
發布時間:2020-08-10 15:28:20
來源:億速云
閱讀:79
作者:小新
小編給大家分享一下python將list排序的方法有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
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排序的方法有哪些的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
總結
以上是生活随笔為你收集整理的list排序方法python_python将list排序的方法有哪些的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 女人查不孕要多少钱
- 下一篇: 星之破晓灵宝怎么升级?