python怎么將list從小到大排列?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
公司主營業(yè)務(wù):成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出東山免費(fèi)做網(wǎng)站回饋大家。
python提供了對(duì)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]
上面這種是直接對(duì)l列表里面的元素排序,sort()函數(shù)還提供了一個(gè)key參數(shù),這個(gè)參數(shù)的值是一個(gè)函數(shù),這個(gè)函數(shù)只能有一個(gè)返回值,且返回值用來進(jìn)行比較。 這個(gè)技術(shù)是快速的因?yàn)閗ey指定的函數(shù)將準(zhǔn)確地對(duì)每個(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)就變成了對(duì)key所接收的值進(jìn)行排序。
2、使用python內(nèi)置函數(shù)sorted排序
sorted方法和sort方法很相似,不同的是,sorted不改變?cè)瓉淼牧斜?,并返回一個(gè)排好序的列表。而list.sort()是改變了原有的列表。還有就是,list.sort()只能對(duì)列表排序,而sorted()可以對(duì)其他數(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}]
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。