Python sorted排序方法如何實現(xiàn)
在給列表排序時,sorted非常好用,語法如下:
sorted(iterable[, cmp[,key[,reverse]]])
sorted定義如下:
- sorted( iterable[, cmp[, key[, reverse]]])
- iterable:是可迭代類型類型;
- cmp:用于比較的函數(shù),比較什么由key決定,有默認(rèn)值,迭代集合中的一項;
- key:用列表元素的某個屬性和函數(shù)進(jìn)行作為關(guān)鍵字,有默認(rèn)值,迭代集合中的一項;
- reverse:排序規(guī)則. reverse = True 或者 reverse = False,有默認(rèn)值。
- 返回值:是一個經(jīng)過排序的可迭代類型,與iterable一樣。簡單列表排序,很容易完成,sorted(list)返回的對象就是列表結(jié)果,但是遇到列表中嵌套元組時,需要使用特殊的方法解決。
問題描述:
給定列表如下:
list_example = [('John', 35), ('Jack', 32), ('Michael', 28), ('Sean', 20)]
輸出要求:
[('Sean', 20), ('Michael', 28), ('Jack', 32), ('John', 35)]
解決方法:
1. 傳入函數(shù)給key,完成操作;
2. 直接使用lambda函數(shù);
方法1的代碼如下:
def revsort(oldlist): return oldlist[::-1] def by_age(li): return sorted(li, key = revsort)
方法2的代碼如下:
def by_age(li): return sorted(li, key = lambda x: x[1])
直接print可以得到結(jié)果:
print(by_age(list_example))
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
python3使用diagrams繪制架構(gòu)圖的步驟
這篇文章主要介紹了python3使用diagrams生成架構(gòu)圖的步驟,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下2021-04-04Python中unittest的數(shù)據(jù)驅(qū)動詳解
這篇文章主要介紹了Python中unittest的數(shù)據(jù)驅(qū)動詳解,數(shù)據(jù)驅(qū)動測試,是一種單元測試框架,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-08-08Python調(diào)用edge-tts實現(xiàn)在線文字轉(zhuǎn)語音效果
edge-tts是一個 Python 模塊,允許通過Python代碼或命令的方式使用 Microsoft Edge 的在線文本轉(zhuǎn)語音服務(wù),這篇文章主要介紹了Python調(diào)用edge-tts實現(xiàn)在線文字轉(zhuǎn)語音效果,需要的朋友可以參考下2024-03-03