av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

詳解python中的lambda與sorted函數

瀏覽:4日期:2022-07-12 11:10:57

lambda表達式

python中形如:

lambda parameters: expression

稱為lambda表達式,用于創建匿名函數,該表達式會產生一個函數對象。

該對象的行為類似于用以下方式定義的函數:

def <lambda>(parameters):return expression

python中的lambda函數可以接受任意數量的參數,但只能有一個表達式。也就是說,lambda表達式適用于表示內部僅包含1行表達式的函數。那么lambda表達式的優勢就很明顯了:

使用lambda表達式可以省去單行函數的定義過程,使代碼更加簡潔; 適用于不需要多次復用的函數

例:

y = lambda x: x*xprint(y(3))> 9

fx = lambda x, y, z: x+y+zprint(fx(3, 4, 5))> 12

sorted()

python3.x中sorted函數:

sorted(iterable, *, key=None, reverse=False)

sorted函數會根據iterable中的項返回一個新的已排序列表。

其中key與reverse是兩個可選參數,它們都必須指定為關鍵字參數;

key:指定帶有單個參數的函數,用于從iterable的每個元素中提取用于比較的鍵,默認為None,即直接比較元素;

reverse:為一個布爾值,用來指定排序規則,默認為False(升序)。

python2的sorted函數中還有一個參數cmp,python3的sorted中已經沒有這個參數了。

與list.sort()方法不同的是,sorted()是有返回值的,而list.sort()的返回值為None;并且list.sort()只能對list進行排序,而sorted()可以接收任何的iterable

例:

# listfoo = [5, 7, 2, 9, 1]bzz = sorted(foo)print(bzz)# > [1, 2, 5, 7, 9]print(sorted(foo))# > [1, 2, 5, 7, 9]print(sorted(foo, reverse = True))# > [9, 7, 5, 2, 1]print(sorted(foo, key = lambda x: x*-1))# > [9, 7, 5, 2, 1]# dictbar = {’java’: 14, ’c’: 16, ’python’: 9, ’cpp’: 6, ’csharp’: 4}print(sorted(bar))# > [’c’, ’cpp’, ’csharp’, ’java’, ’python’]print(sorted(bar.items(), key = lambda kv: kv[1], reverse = True))# > [(’c’, 16), (’java’, 14), (’python’, 9), (’cpp’, 6), (’csharp’, 4)]

以上就是詳解python中的lambda與sorted函數的詳細內容,更多關于python lambda與sorted函數的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美成年网站 | 久久夜视频 | av入口| 久久久久亚洲 | 午夜资源| 亚洲精品中文字幕 | 亚洲一区二区在线电影 | 精品一区二区免费视频 | 成人av免费网站 | 日一区二区 | 黄色毛片免费看 | 欧美一区二区三区的 | 成人免费视频 | 国产一区日韩在线 | 999视频在线播放 | 日韩在线中文 | 伊人网在线播放 | 久久综合一区 | 成人免费视频 | 亚洲精品天堂 | 国产精品亚洲第一区在线暖暖韩国 | 国产激情自拍视频 | 成人永久免费 | 色婷婷综合网 | 亚洲视频自拍 | 天天操天天摸天天爽 | 欧美日韩国产一区二区 | 91成人在线 | 国产精品久久久久久久久久久久 | av一区二区三区四区 | 亚洲国内精品 | 精品久久久久香蕉网 | 一区二区在线观看免费视频 | 国产精品色 | 国产高清精品一区二区三区 | 成人国产精品入口免费视频 | 午夜电影网 | 91精品一区| 成人精品在线观看 | 91精品久久久久久综合五月天 | 91久久国产精品 |