久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

詳解python中的lambda與sorted函數(shù)

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

lambda表達式

python中形如:

lambda parameters: expression

稱為lambda表達式,用于創(chuàng)建匿名函數(shù),該表達式會產(chǎn)生一個函數(shù)對象。

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

def <lambda>(parameters):return expression

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

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

例:

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函數(shù):

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

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

其中key與reverse是兩個可選參數(shù),它們都必須指定為關(guān)鍵字參數(shù);

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

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

python2的sorted函數(shù)中還有一個參數(shù)cmp,python3的sorted中已經(jīng)沒有這個參數(shù)了。

與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函數(shù)的詳細內(nèi)容,更多關(guān)于python lambda與sorted函數(shù)的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!

標簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 溧阳市| 东乡县| 克拉玛依市| 莲花县| 屏东县| 汾阳市| 界首市| 临清市| 会泽县| 开平市| 丹寨县| 昭通市| 孝昌县| 甘南县| 华阴市| 永川市| 阜南县| 枝江市| 明水县| 理塘县| 鹤山市| 泸溪县| 赤峰市| 济宁市| 古交市| 仙居县| 衡东县| 吐鲁番市| 固原市| 南京市| 赞皇县| 甘南县| 吴桥县| 兴隆县| 汪清县| 旬邑县| 大埔县| 鹿邑县| 获嘉县| 清水河县| 尼木县|