欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python淺析匿名函數(shù)lambda的用法

 更新時間:2022年07月22日 08:42:55   作者:Flyme?awei  
lambda所表示的匿名函數(shù)的內(nèi)容應(yīng)該是很簡單的,如果復(fù)雜的話,干脆就重新定義一個函數(shù)了,使用lambda就有點過于執(zhí)拗了。lambda就是用來定義一個匿名函數(shù)的,如果還要給他綁定一個名字的話,就會顯得有點畫蛇添足,通常是直接使用lambda函數(shù)

lambda函數(shù)的定義   

lambda函數(shù)是Python中常用的內(nèi)置函數(shù),又稱為匿名函數(shù)。和普通函數(shù)相比,它只有函數(shù)體,省略了def和return,使得結(jié)構(gòu)看起來更精簡。其基本調(diào)用語法如下:

lambda [var1 [,var2,…varn]]:expression

[var1 [,var2,…varn]]:形式參數(shù),可以理解為入?yún)?,供表達(dá)式使用。

expression:函數(shù)表達(dá)式,其結(jié)果為lambda函數(shù)的返回值。

Lambda函數(shù)在Python中

lambda 函數(shù)是一個匿名函數(shù)(即,沒有名稱定義),它可以接受任意數(shù)量的參數(shù),但與普通函數(shù)不同,它只計算并返回一個表達(dá)式

Python 中的 lambda 函數(shù)使用以下語法表達(dá):

lambda 參數(shù):表達(dá)式

lambda 函數(shù)包括三個元素:

  • 關(guān)鍵字 lambda:與普通函數(shù)中 def 類似
  • 參數(shù):支持傳遞位置和關(guān)鍵字參數(shù),與普通函數(shù)一樣
  • 正文:處理定參數(shù)的表達(dá)式

需要注意的是,普通函數(shù)不同,這里不需要用括號將 lambda 函數(shù)的參數(shù)括起來,如果 lambda 函數(shù)有兩個或更多參數(shù),我們用逗號列出它們

我們使用 lambda 函數(shù)只計算一個短表達(dá)式(理想情況下,單行)并且只計算一次,這意味著我們以后不會再復(fù)用這個函數(shù)。通常來說我們會將 lambda 函數(shù)作為參數(shù)傳遞給高階函數(shù)(接受其他函數(shù)作為參數(shù)的函數(shù)),例如 Python 內(nèi)置函數(shù),如 filter()、map() 或 reduce()等

匿名函數(shù),顧名思義,沒有名字的函數(shù)

我來看一下語法:

lambda [list]: 表達(dá)式

這里介紹一下參數(shù)

"""
[list]:表示參數(shù)列表, 
注意:參數(shù)與表達(dá)式之間需要冒號來區(qū)分 
表達(dá)式 :表達(dá)式方法非常多,表達(dá)形式也非常多 
返回值 :為表達(dá)式的結(jié)果value
"""

例如,上方的代碼這里

lambda x:x % n > 0

x 為需要傳入的參數(shù),而 x % n > 0 為表達(dá)式,之間需要用冒號進(jìn)行引用,計算的表達(dá)式結(jié)果為返回值這里舉例說明:如果設(shè)計一個求 2 個數(shù)之和的函數(shù),使用普通函數(shù)的方式,定義如下:

def add(x, y):
    return x + y
print(add(3, 4))

我們看到只有一行表達(dá)式,直接運算結(jié)果返回值,那這時我們?nèi)绻褂媚涿瘮?shù)一行代碼即可完成

add = lambda x, y: x + y
print(add)

這里我們將直接寫出我們的結(jié)果,我們可以看到對于比較單行返回的函數(shù),使用 lambda 表達(dá)式可以省去定義函數(shù)的過程,讓代碼更加簡潔,針對不需要多次復(fù)用的函數(shù),使用 lambda 表達(dá)式可以在用完之后立即釋放,提高程序 執(zhí)行的性能。而且還能配合其他的一些高階函數(shù)配合使用

# -*- coding: utf-8 -*-
fun1 = lambda a, b: x + y
x = int(input('x='))
y = int(input('y='))
print('x+y=', fun1(x, y))
def add(a, b):
    print('add=', a + b)
add(x, y)
fun = lambda a, b: a ** 2
f = fun(2, 4)
print(type(fun))
print(f)

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

相關(guān)文章

  • Python pip安裝第三方庫實現(xiàn)過程解析

    Python pip安裝第三方庫實現(xiàn)過程解析

    這篇文章主要介紹了Python pip安裝第三方庫實現(xiàn)過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • keras之權(quán)重初始化方式

    keras之權(quán)重初始化方式

    這篇文章主要介紹了keras之權(quán)重初始化方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • Python 判斷 有向圖 是否有環(huán)的實例講解

    Python 判斷 有向圖 是否有環(huán)的實例講解

    下面小編就為大家分享一篇Python 判斷 有向圖 是否有環(huán)的實例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • 使用python實現(xiàn)一個簡單ping?pong服務(wù)器

    使用python實現(xiàn)一個簡單ping?pong服務(wù)器

    這篇文章主要為大家介紹了使用python實現(xiàn)一個簡單ping?pong服務(wù)器,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • pytorch 歸一化與反歸一化實例

    pytorch 歸一化與反歸一化實例

    今天小編就為大家分享一篇pytorch 歸一化與反歸一化實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python3 導(dǎo)入上級目錄中的模塊實例

    Python3 導(dǎo)入上級目錄中的模塊實例

    今天小編就為大家分享一篇Python3 導(dǎo)入上級目錄中的模塊實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python語言是免費還是收費的?

    python語言是免費還是收費的?

    在本篇文章里小編給大家分享的是關(guān)于python語言是否免費的相關(guān)知識點,需要的朋友們可以學(xué)習(xí)下。
    2020-06-06
  • Python簡單讀取json文件功能示例

    Python簡單讀取json文件功能示例

    這篇文章主要介紹了Python簡單讀取json文件功能,結(jié)合實例形式分析了Python文件讀取及json格式數(shù)據(jù)相關(guān)操作技巧,需要的朋友可以參考下
    2017-11-11
  • python棧實現(xiàn)進(jìn)制轉(zhuǎn)換的示例詳解

    python棧實現(xiàn)進(jìn)制轉(zhuǎn)換的示例詳解

    棧(Stack)是計算機科學(xué)中常用的數(shù)據(jù)結(jié)構(gòu),具有眾多實際應(yīng)用,其中之一是使用棧來實現(xiàn)進(jìn)制轉(zhuǎn)換,將一個數(shù)字從一種進(jìn)制表示轉(zhuǎn)換為另一種進(jìn)制表示,本文將深入研究棧的原理,以及如何使用Python實現(xiàn)十進(jìn)制到二進(jìn)制、八進(jìn)制和十六進(jìn)制的進(jìn)制轉(zhuǎn)換,需要的朋友可以參考下
    2023-11-11
  • Python數(shù)據(jù)類型--字典dictionary

    Python數(shù)據(jù)類型--字典dictionary

    這篇文章主要介紹了Python數(shù)據(jù)類型字典dictionary,字典是另一種可變?nèi)萜髂P?,且可存儲任意類型對象。下面詳?xì)內(nèi)容需要的小伙伴可以參考一下,希望對你有所幫助
    2022-02-02

最新評論