x=1f=lambda x: x + 1print(f(1)) 這個簡單的 lambda 函數(shù)接受一個參數(shù) x,并返回 x+1 的結果。
這個 lambda 函數(shù)接受兩個參數(shù) x 和 y,并返回它們的和。
map 函數(shù)可以將一個函數(shù)應用于一個迭代器中的每個元素,并返回一個新的迭代器。lambda 函數(shù)常常用于 map 函數(shù)中。 lst = [1, 2, 3, 4, 5]new_lst = list(map(lambda x: x * 2, lst))print(new_lst) 這個 lambda 函數(shù)接受一個參數(shù) x,并返回 x*2 的結果。map 函數(shù)將 lambda 函數(shù)應用于列表 lst 中的每個元素,并將結果存儲在一個新列表 new_lst 中。
filter 函數(shù)可以使用一個函數(shù)來過濾一個迭代器中的元素。lambda 函數(shù)常常用于 filter 函數(shù)中。
這個 lambda 函數(shù)接受一個參數(shù) x,并返回 x 是否是偶數(shù)的布爾值。filter 函數(shù)將 lambda 函數(shù)應用于列表 lst 中的每個元素,并僅將返回 True 的元素存儲在新列表 new_lst 中。
sorted 函數(shù)可以使用一個函數(shù)來排序一個列表。lambda 函數(shù)常常用于 sorted 函數(shù)中。 lst = [(2, 'b'), (1, 'a'), (3, 'c')] new_lst = sorted(lst, key=lambda x: x[0]) 這個 lambda 函數(shù)接受一個參數(shù) x,并返回元組 x 中的第一個元素。sorted 函數(shù)將 lambda 函數(shù)應用于列表 lst 中的每個元素,并按照返回的結果對元素進行排序。 6.作為函數(shù)參數(shù)傳遞 在 Python 中,函數(shù)可以作為參數(shù)傳遞給其他函數(shù)。lambda 表達式可以用于這種情況,以便快速定義并傳遞一個匿名函數(shù)。例如,可以使用 lambda 表達式來排序列表:
在這個例子中,lambda 表達式 lambda x: len(x) 用于計算列表中每個元素的長度,并將其作為排序的關鍵字。 7.用于返回函數(shù) 在 Python 中,函數(shù)可以作為另一個函數(shù)的返回值。lambda 表達式可以用于快速定義并返回一個匿名函數(shù)。例如,可以定義一個函數(shù),該函數(shù)返回一個 lambda 表達式,該 lambda 表達式返回傳遞的參數(shù)的平方值: def get_squared_function(): return lambda x: x**2f = get_squared_function()print(f(2)) # 4 在這個例子中,get_squared_function 函數(shù)返回一個 lambda 表達式 lambda x: x**2,該 lambda 表達式接受一個參數(shù)并返回其平方值。然后,返回的函數(shù)賦值給 f 變量,并在調(diào)用時用 f(2) 的方式使用。 8、用于條件表達式,與4一樣 lambda 表達式還可以用于條件表達式中,以便根據(jù)條件返回一個值。例如,可以使用 lambda 表達式來檢查列表中的每個元素是否為奇數(shù):
在這個例子中,lambda 表達式 lambda x: x % 2 != 0 用于檢查列表中的每個元素是否為奇數(shù),并返回一個布爾值。然后,filter 函數(shù)用于篩選列表中符合條件的元素。 9、使用Lambda函數(shù)對列表進行歸約,計算所有元素的和 from functools import reducelst = [1, 2, 3, 4, 5]total = reduce(lambda x, y: x + y, lst)print(total) # 15 |
|