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

python中的lambda函數(shù)用法指南

 更新時間:2023年01月06日 11:53:32   作者:柳小蔥  
Lambda函數(shù)是Python中的匿名函數(shù),下面這篇文章主要給大家介紹了關(guān)于python中l(wèi)ambda函數(shù)用法的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下

最近碰見太多次lambda函數(shù)了,那就來詳細(xì)解釋一下該函數(shù)。

lambda函數(shù)

我們先對lambda函數(shù)進(jìn)行一個簡單的介紹

  • lambda函數(shù)是一種匿名函數(shù),即沒有名字的函數(shù)
  • 使用lambda保留字定義,函數(shù)名是返回結(jié)果
  • lambda函數(shù)的函數(shù)體只是一個表達(dá)式
  • lambda函數(shù)用于定義簡單的、能夠在一行內(nèi)表示的函數(shù)
  • lambda表達(dá)式” : “后面,只能有一個表達(dá)式,def則可以有多個。
  • lambda一般用來定義簡單的函數(shù),而def可以定義復(fù)雜的函數(shù)

先來看一個例子:

g=lambda x:x+1
print(g(1))
#結(jié)果為2

可以這樣認(rèn)為,lambda作為一個表達(dá)式,定義了一個匿名函數(shù)。等價于:

def g(x):
    return x+1

非常容易理解,在這里lambda簡化了函數(shù)定義的書寫形式。是代碼更為簡潔,但是使用函數(shù)的定義方式更為直觀,易理解。

可傳入多個參數(shù)

g=lambda x,y,z:x+y+z*2
print(g(1,2,3))
#結(jié)果為9

#也可直接傳遞參數(shù)
(lambda x:x**2)(3)
#結(jié)果為9

lambda表達(dá)式會返回一個函數(shù)對象,如果沒有變量接受這個返回值的話,它很快就會被丟棄。也正是由于lambda只是一個表達(dá)式,所以它可以直接作為list和dict的成員

list_a = [lambda a: a**3, lambda b: b**3]
print(type(list_a[0]))

結(jié)果為:

與map函數(shù)進(jìn)行使用

a = map(lambda x:x**2,range(5))
print(list(a))

結(jié)果為:

補充:一個爭議

事實上,關(guān)于lambda在Python社區(qū)是存在爭議的。Python程序員對于到底要不要使用lambda意見不一致。

  • 支持方認(rèn)為使用lambda編寫的代碼更緊湊,更“pythonic”。
  • 反對方認(rèn)為,lambda函數(shù)能夠支持的功能十分有限,其不支持多分支程序if...elif...else...和異常處理程序try ...except...。并且,lambda函數(shù)的功能被隱藏,對于編寫代碼之外的人員來說,理解lambda代碼需要耗費一定的理解成本。他們認(rèn)為,使用for循環(huán)等來替代lambda是一種更加直白的編碼風(fēng)格。

關(guān)于lambda的爭執(zhí)沒有定論。在實際中,是否使用lambda編程取決于程序員的個人喜好。

總結(jié)

lambda函數(shù)使代碼結(jié)構(gòu)更加緊湊,但卻使代碼看起來不是那么清晰。

參考資料

https://zhuanlan.zhihu.com/p/80960485

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

相關(guān)文章

  • python統(tǒng)計cpu利用率的方法

    python統(tǒng)計cpu利用率的方法

    這篇文章主要介紹了python統(tǒng)計cpu利用率的方法,涉及Python中win32pdh模塊的使用技巧,需要的朋友可以參考下
    2015-06-06
  • PyQt5每天必學(xué)之單行文本框

    PyQt5每天必學(xué)之單行文本框

    這篇文章主要為大家詳細(xì)介紹了PyQt5每天必學(xué)之單行文本框的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • python遍歷文件目錄、批量處理同類文件

    python遍歷文件目錄、批量處理同類文件

    這篇文章主要為大家詳細(xì)介紹了python遍歷文件目錄、批量處理同類文件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • Python實現(xiàn)的搖骰子猜大小功能小游戲示例

    Python實現(xiàn)的搖骰子猜大小功能小游戲示例

    這篇文章主要介紹了Python實現(xiàn)的搖骰子猜大小功能小游戲,涉及Python隨機數(shù)運算與數(shù)值判斷相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • python多項式擬合之np.polyfit 和 np.polyld詳解

    python多項式擬合之np.polyfit 和 np.polyld詳解

    這篇文章主要介紹了python多項式擬合之np.polyfit 和 np.polyld的實例代碼,python數(shù)據(jù)擬合主要可采用numpy庫,庫的安裝可直接用pip install numpy等,需要的朋友跟隨小編一起學(xué)習(xí)吧
    2020-02-02
  • 完美解決安裝完tensorflow后pip無法使用的問題

    完美解決安裝完tensorflow后pip無法使用的問題

    今天小編就為大家分享一篇完美解決安裝完tensorflow后pip無法使用的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 對python字典過濾條件的實例詳解

    對python字典過濾條件的實例詳解

    今天小編就為大家分享一篇對python字典過濾條件的實例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python容器的內(nèi)置通用函數(shù)操作

    python容器的內(nèi)置通用函數(shù)操作

    容器是一種把多個元素組織在一起的數(shù)據(jù)結(jié)構(gòu),容器中的元素可以逐個地迭代獲取,可以用in, not in關(guān)鍵字判斷元素是否包含在容器中。接下來通過本文給大家介紹python容器的內(nèi)置通用函數(shù)操作,感興趣的朋友一起看看吧
    2021-11-11
  • python代碼實現(xiàn)五子棋游戲

    python代碼實現(xiàn)五子棋游戲

    這篇文章主要為大家詳細(xì)介紹了python代碼實現(xiàn)五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • PageFactory設(shè)計模式基于python實現(xiàn)

    PageFactory設(shè)計模式基于python實現(xiàn)

    這篇文章主要介紹了PageFactory設(shè)計模式基于python實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04

最新評論