python中sort()函數(shù)用法詳解
1.函數(shù)sort()是對(duì)列表就地排序
>>> x=[8,9,0,7,4,5,1,2,3,6] >>> x.sort() >>> print(x) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2.函數(shù)sort()修改序列,不返回任何值
>>> x=[8,9,0,7,4,5,1,2,3,6] >>> y=x.sort() >>> print(y) None >>> print(x) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
3.sorted()函數(shù)會(huì)返回一個(gè)排序列表,不改變?cè)行蛄?/h2>
>>> x=[8,9,0,7,4,5,1,2,3,6]
>>> y=sorted(x)
>>> print(y)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> print(x)
[8, 9, 0, 7, 4, 5, 1, 2, 3, 6]
>>> x=[8,9,0,7,4,5,1,2,3,6] >>> y=sorted(x) >>> print(y) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> print(x) [8, 9, 0, 7, 4, 5, 1, 2, 3, 6]
4.函數(shù)sort()是升序排序,如何降序排序,需要用到函數(shù)reverse()
>>> x=[8,9,0,7,4,5,1,2,3,6] >>> x.sort() >>> x.reverse() >>> print(x) [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
5.函數(shù)sort()排序的高級(jí)用法
方法sort()可以接受兩個(gè)參數(shù)sort(key,reverse)
(1) key參數(shù)
key接受的是一個(gè)只有一個(gè)形參的函數(shù)
key接受的函數(shù)返回值,表示此元素的權(quán)值,sort將按照權(quán)值大小進(jìn)行排序
>>> x=[8,9,0,7,4,5,1,2,3,6] >>> def size(a): >>> ? ? x=10-int(a) >>> ? ? return x >>> x.sort(key=size) >>> print(x) [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
(2) reverse參數(shù)
reverse接受的是一個(gè)bool類(lèi)型的值 (Ture or False),表示是否顛倒排列順序,一般默認(rèn)的是False,注意第一個(gè)字母是大寫(xiě)的
>>> x=[8,9,0,7,4,5,1,2,3,6] >>> x.sort(reverse=True) >>> print(x) [9, 8, 7, 6, 5, 4, 3, 2, 1, 0] >>> x.sort(reverse=False) >>> print(x) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>>?
補(bǔ)充:python中sort的用法——對(duì)列表中的元素按關(guān)鍵字排序
在python中,sort是列表排序的一種方法,調(diào)用方式為list.sort(),這樣會(huì)改變?cè)瓉?lái)列表的值。
sort(key, reverse)方法有key和reverse兩種參數(shù),其中key表示的是排序的關(guān)鍵字,reverse表示的是排序的方式(reverse=False表示升序和reverse=True表示降序)
sort()方法默認(rèn)是升序排序,即默認(rèn)reverse=False。
下面主要寫(xiě)一下如何用sort根據(jù)關(guān)鍵字排序:
對(duì)于一個(gè)列表,其中的元素也是列表,要根據(jù)元素中的值進(jìn)行排序,直接看代碼:
例子一:
l = [[1,2,3],[2,2,1],[2,1,3]] l.sort(key = lambda x: (x[0],-x[1])) ''' 其中key表示按第幾個(gè)關(guān)鍵字排序,lambda x:后()中的元素表示了關(guān)鍵字的優(yōu)先級(jí) 第一位表示最高的優(yōu)先級(jí),第二位次之。。。 其中下x[0]表示按第一個(gè)關(guān)鍵詞的升序排列,-x[1]表示按第二個(gè)關(guān)鍵詞的降序排列。 ''' print(l) #輸出:[[1, 2, 3], [2, 2, 1], [2, 1, 3]]
例子二:
l = [[1,2,2],[2,2,1],[2,1,3]] l.sort(key = lambda x: (-x[2],x[1])) #表示按第三個(gè)元素的降序排列,然后再根據(jù)第二個(gè)元素的升序排 print(l) #輸出:[[2, 1, 3], [1, 2, 2], [2, 2, 1]]
總結(jié)
到此這篇關(guān)于python中sort()函數(shù)用法的文章就介紹到這了,更多相關(guān)python sort()函數(shù)用法內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python去除空格和換行符的實(shí)現(xiàn)方法(推薦)
下面小編就為大家?guī)?lái)一篇python去除空格和換行符的實(shí)現(xiàn)方法(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-01-01關(guān)于Python使用logging庫(kù)進(jìn)行有效日志管理的方法詳解
在開(kāi)發(fā)大型軟件或處理復(fù)雜問(wèn)題時(shí),我們經(jīng)常需要一種方法來(lái)記錄和跟蹤程序的運(yùn)行狀態(tài),Python 提供了一個(gè)名為 logging 的標(biāo)準(zhǔn)庫(kù),可以幫助我們更好地完成這項(xiàng)任務(wù),在這篇文章中,我們將介紹如何使用 Python 的 logging 庫(kù)進(jìn)行日志記錄2023-06-06使用Python3編寫(xiě)抓取網(wǎng)頁(yè)和只抓網(wǎng)頁(yè)圖片的腳本
這篇文章主要介紹了使用Python3編寫(xiě)抓取網(wǎng)頁(yè)和只抓網(wǎng)頁(yè)圖片的腳本,使用到了urllib模塊,需要的朋友可以參考下2015-08-08Django實(shí)現(xiàn)帶進(jìn)度條的倒計(jì)時(shí)功能詳解
這篇文章主要為大家詳細(xì)介紹了如何利用Django實(shí)現(xiàn)簡(jiǎn)單的帶進(jìn)度條的倒計(jì)時(shí)功能,可以在頁(yè)面加載后自動(dòng)開(kāi)始計(jì)時(shí),下次計(jì)時(shí)需要手動(dòng)刷新頁(yè)面,需要的可以參考一下2023-04-04Python3 導(dǎo)入上級(jí)目錄中的模塊實(shí)例
今天小編就為大家分享一篇Python3 導(dǎo)入上級(jí)目錄中的模塊實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-02-02pytorch+lstm實(shí)現(xiàn)的pos示例
今天小編就為大家分享一篇pytorch+lstm實(shí)現(xiàn)的pos示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-01-01Python實(shí)現(xiàn)pdf轉(zhuǎn)word詳細(xì)代碼
在日常工作中,我們經(jīng)常會(huì)遇到需要將PDF文件轉(zhuǎn)換成Word文件的需求。雖然市面上有許多PDF轉(zhuǎn)Word的工具,但是它們通常需要付費(fèi)或者有轉(zhuǎn)換后的格式問(wèn)題,這篇文章主要給大家介紹了關(guān)于Python實(shí)現(xiàn)pdf轉(zhuǎn)word的相關(guān)資料,需要的朋友可以參考下2023-09-09