Python中l(wèi)ambda表達(dá)式的優(yōu)缺點(diǎn)有哪些

這篇文章給大家分享的是有關(guān)Python中l(wèi)ambda表達(dá)式的優(yōu)缺點(diǎn)有哪些的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

在和平等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站制作、網(wǎng)站建設(shè) 網(wǎng)站設(shè)計制作按需求定制制作,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站制作,營銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè),和平網(wǎng)站建設(shè)費(fèi)用合理。

lambda表達(dá)式是什么?

lambda 表達(dá)式是 Python 中創(chuàng)建匿名函數(shù)的一個特殊語法. 或稱 lambda 語法本身為 lambda 表達(dá)式,而它返回的函數(shù)我稱之為 lambda 函數(shù)。或者稱為匿名函數(shù)。

Python 的 lambda 表達(dá)式允許在一行代碼中創(chuàng)建一個函數(shù)并傳遞。

看下面的代碼:

website = ["www.pythontab.com", "bbs.pythontab.com", "docs.pythontab.com"]
def wordCount(string):
    return len(string)
siteNameLength = map(wordCount, website)
print(siteNameLength)

結(jié)果

[17, 17, 18]

上面的代碼可以轉(zhuǎn)化為 lambda 表達(dá)式表示:

website = ["www.pythontab.com", "bbs.pythontab.com", "docs.pythontab.com"]
siteNameLength = map(lambda string: len(string), website)
print(siteNameLength)

結(jié)果

[17, 17, 18]

lambda 表達(dá)式僅僅是創(chuàng)建函數(shù)的一個特殊方法。 它們只包含一條語句, 并自動返回這條語句的結(jié)果。

當(dāng)經(jīng)驗豐富的 Python 程序員看到一個lambda 表達(dá)式時,他們知道他們正在使用一個僅在一個地方有效的函數(shù), 并且只做一件事情。

lamda 的優(yōu)缺點(diǎn)

從上面的例子可以看出lambda 表達(dá)式可以寫出非常簡練的代碼,但是缺點(diǎn)也非常明顯:難于理解,降低了可讀性和性能。特別是對于 Python 新手。

如下面的lambda表達(dá)式:

lambda_list = lambda n: lambda_list(n-1) + (lambda x: x * (n-1),) if n else ()

很難短時間明白代碼的含義。

lamda缺點(diǎn):

對很多 Python 程序員來說, lambda 表達(dá)式是一種古怪而又陌生的語法

lambda 函數(shù)本身缺少名稱和文檔, 意味著了解它們功能的唯一方式就是讀代碼

lambda 表達(dá)式只能包含一條語句, 因此某些提高可讀性的語言功能, 如元組拆包, 不能與它們一起使用

lambda 函數(shù)通??梢员惶鎿Q為標(biāo)準(zhǔn)庫中已存在的函數(shù)或 Python 內(nèi)置的函數(shù)

lamda優(yōu)點(diǎn):

代碼簡潔

不增加額外變量

lambda 表達(dá)式與命名函數(shù)的主要不同點(diǎn):

可以立刻傳遞(無需變量)

在內(nèi)部只能包含一行代碼

自動返回結(jié)果

既沒有文檔字符串, 也沒有名稱

lambda 使用場景

下面的場景是比較適合使用 lambda 表達(dá)式的:

你所要做的操作是不重要的: 函數(shù)不值得一個名稱

使用 lambda 表達(dá)式比你所能想到的函數(shù)名稱讓代碼更容易理解

你很確定還沒有一個函數(shù)能滿足你的需求

你團(tuán)隊的每個人都了解 lambda 表達(dá)式, 并且都同意使用它們

感謝各位的閱讀!關(guān)于Python中l(wèi)ambda表達(dá)式的優(yōu)缺點(diǎn)有哪些就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

文章名稱:Python中l(wèi)ambda表達(dá)式的優(yōu)缺點(diǎn)有哪些
地址分享:http://bm7419.com/article34/pcgspe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、網(wǎng)頁設(shè)計公司、微信公眾號、微信小程序、網(wǎng)站制作企業(yè)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計