Python淺析匿名函數lambda的用法

匿名函數,顧名思義,沒有名字的函數

我來看一下語法:

lambda [list]: 表達式

這裡介紹一下參數

"""
[list]:表示參數列表, 
註意:參數與表達式之間需要冒號來區分 
表達式 :表達式方法非常多,表達形式也非常多 
返回值 :為表達式的結果value
"""

例如,上方的代碼這裡

lambda x:x % n > 0

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

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

我們看到隻有一行表達式,直接運算結果返回值,那這時我們如果使用匿名函數一行代碼即可完成

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

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

# -*- 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)

到此這篇關於Python淺析匿名函數lambda的用法的文章就介紹到這瞭,更多相關Python lambda內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: