最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

深入分析Python中Lambda函數(shù)的用法

 更新時(shí)間:2022年12月22日 16:19:11   作者:alwaysrun  
lambda函數(shù)是Python中常用的內(nèi)置函數(shù),又稱為匿名函數(shù)。和普通函數(shù)相比,它只有函數(shù)體,省略了def和return,使得結(jié)構(gòu)看起來(lái)更精簡(jiǎn)。本文將詳細(xì)說(shuō)說(shuō)Lambda函數(shù)的用法,需要的可以參考一下

lambda函數(shù)是一種小的匿名函數(shù)。

lambda語(yǔ)法

lambda函數(shù):

lambda [arg1 [,arg2,...[,argn]]] : expression

  • 輸入:可接受任意數(shù)量的參數(shù),如lambda : print('hello'),lambda x, y : x * y
  • 輸出:expression計(jì)算得到的值;
  • 函數(shù)體:只能是單行的,有一個(gè)表達(dá)式;
  • 函數(shù)是匿名的(沒(méi)有函數(shù)名);

示例1:lambda函數(shù)與普通函數(shù)類似,可直接引用(讀取方式)外部變量

gAll = 10
if __name__ == '__main__':
    count = 2
    result = map(lambda x: x * count + gAll, range(10))
    print(list(result))
# [10, 12, 14, 16, 18, 20, 22, 24, 26, 28]

示例2:lambda函數(shù)調(diào)用(且表達(dá)式可為簡(jiǎn)單if語(yǔ)句)

result = []
for i in range(10):
    result.append((lambda x: x * 2 if x % 2 == 0 else x)(i))
print(result)
# [0, 1, 4, 3, 8, 5, 12, 7, 16, 9]

示例3:lambda延遲計(jì)算引起的問(wèn)題(若不使用參數(shù),所有打印都是9),為避免此問(wèn)題,可把i以參數(shù)方式傳遞進(jìn)去(類似示例2),或直接把i作為參數(shù)賦值一下(類似生成同名局部變量):

result = []
for i in range(10):
    # result.append((lambda: print("lambda:", i)))  # 全部是9
    result.append((lambda i=i: print("lambda:", i)))
for f in result:
    f()

高階函數(shù)

lambda函數(shù)可作為函數(shù)的返回值,以增強(qiáng)函數(shù)功能;以冪乘為例:

def powMulti(n):
    return lambda x: x**n
if __name__ == '__main__':
    p = powMulti(2)
    for i in range(10):
        print(p(i))

內(nèi)置高階函數(shù)

lambda可方便應(yīng)用于:

  • map(fun, iterable, ...):影射;用fun依次操作集合中元素,并返回對(duì)應(yīng)結(jié)果的生成器;
  • reduce(fun, iterable[, initializer]):累積;用fun(兩個(gè)參數(shù))依次操作集元素(val = fun(val, ele);val初始值為initializer,若忽略則為集合中的第一個(gè)元素),返回最終結(jié)果;
  • sorted(iterable[, cmp[, key[, reverse]]]):排序;
  • filter(fun, iterable):過(guò)濾;
src = [random.randint(0, 100) for _ in range(10)]
print(src)
dest = sorted(src)
print(dest)
ret = functools.reduce(lambda x, y: x + y, range(10), 10)
print(ret)  # 55

到此這篇關(guān)于深入分析Python中Lambda函數(shù)的用法的文章就介紹到這了,更多相關(guān)Python Lambda內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python學(xué)習(xí)之Django的管理界面代碼示例

    Python學(xué)習(xí)之Django的管理界面代碼示例

    這篇文章主要介紹了Python學(xué)習(xí)之Django的管理界面代碼示例,分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • Python+Pandas 獲取數(shù)據(jù)庫(kù)并加入DataFrame的實(shí)例

    Python+Pandas 獲取數(shù)據(jù)庫(kù)并加入DataFrame的實(shí)例

    今天小編就為大家分享一篇Python+Pandas 獲取數(shù)據(jù)庫(kù)并加入DataFrame的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • 解決AttributeError:'NoneTypeobject'?has?no?attribute'Window'的問(wèn)題(親測(cè)有效)

    解決AttributeError:'NoneTypeobject'?has?no?attrib

    這篇文章主要介紹了解決AttributeError:?‘NoneType‘?object?has?no?attribute?‘Window‘的問(wèn)題(親測(cè)有效),本文給大家介紹的非常想詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-03-03
  • Python基于Tkinter實(shí)現(xiàn)的垃圾分類答題軟件代碼

    Python基于Tkinter實(shí)現(xiàn)的垃圾分類答題軟件代碼

    這篇文章主要介紹了基于Tkinter實(shí)現(xiàn)的垃圾分類答題軟件代碼,圖形用戶界面是一種人與計(jì)算機(jī)通信的界面顯示格式,允許用戶使用鼠標(biāo)等輸入設(shè)備操縱屏幕上的圖標(biāo)或菜單選項(xiàng),需要的朋友可以參考下
    2023-04-04
  • Pycharm中新添加或者導(dǎo)入項(xiàng)目文件名紅色的解決方法

    Pycharm中新添加或者導(dǎo)入項(xiàng)目文件名紅色的解決方法

    Pycharm的代碼中添加新的文件夾,發(fā)現(xiàn)文件夾下的文件名是紅色的,遇到這樣的問(wèn)題如何解決呢,下面小編給大家?guī)?lái)了Pycharm中新添加或者導(dǎo)入項(xiàng)目文件名紅色的解決方法,感興趣的朋友一起看看吧
    2023-12-12
  • Python中的rjust()方法使用詳解

    Python中的rjust()方法使用詳解

    這篇文章主要介紹了Python中的rjust()方法使用詳解,是Python學(xué)習(xí)入門中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • 詳解python的數(shù)字類型變量與其方法

    詳解python的數(shù)字類型變量與其方法

    大家都知道數(shù)字?jǐn)?shù)據(jù)類型存儲(chǔ)數(shù)值,它們是不可變的數(shù)據(jù)類型,這意味著改變數(shù)據(jù)類型的結(jié)果值,需要一個(gè)新分配的對(duì)象。這篇文章給大家詳細(xì)介紹了python的數(shù)字類型變量以及其方法,文中介紹的很詳細(xì),相信對(duì)大家的理解和學(xué)習(xí)很有幫助,有需要的朋友們可以參考借鑒。
    2016-11-11
  • python opencv實(shí)現(xiàn)目標(biāo)區(qū)域裁剪功能

    python opencv實(shí)現(xiàn)目標(biāo)區(qū)域裁剪功能

    這篇文章主要介紹了python opencv實(shí)現(xiàn)目標(biāo)區(qū)域裁剪功能,通過(guò)截取到坐標(biāo)信息以后用CV2的裁剪就可以完美實(shí)現(xiàn),本文給大家分享實(shí)例代碼,需要的朋友可以參考下
    2021-07-07
  • Python內(nèi)建類型float源碼學(xué)習(xí)

    Python內(nèi)建類型float源碼學(xué)習(xí)

    這篇文章主要為大家介紹了Python內(nèi)建類型float源碼學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • 為什么入門大數(shù)據(jù)選擇Python而不是Java?

    為什么入門大數(shù)據(jù)選擇Python而不是Java?

    為什么入門大數(shù)據(jù)選擇Python而不是Java?這篇文章就來(lái)談?wù)剬W(xué)習(xí)大數(shù)據(jù)入門語(yǔ)言的選擇,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03

最新評(píng)論

常州市| 通辽市| 永康市| 黄石市| 旬阳县| 曲沃县| 花莲市| 襄垣县| 广安市| 大邑县| 明溪县| 军事| 临高县| 新密市| 铜川市| 溧阳市| 章丘市| 新竹县| 黔南| 永嘉县| 革吉县| 彰武县| 黄石市| 连州市| 麻江县| 台中市| 大新县| 乐至县| 彭州市| 类乌齐县| 曲松县| 莎车县| 蓬溪县| 大余县| 三都| 桃江县| 高州市| 获嘉县| 香格里拉县| 柏乡县| 云霄县|