在Python中,lambda函數是一種匿名函數,它是一種簡化函數定義的方式。lambda函數可以在需要函數對象的任何地方使用,并且通常用于定義簡短的、一次性的函數。
lambda函數的語法如下:
lambda arguments: expression
其中,arguments是函數的參數,expression是函數的返回值。
lambda函數的特點:
匿名性:lambda函數沒有名稱,它是一個匿名函數。
簡潔性:lambda函數通常只包含一行表達式,因此它們比較簡潔。
可調用性:lambda函數是函數對象,可以像普通函數一樣調用。
lambda函數的應用場景包括但不限于:
作為參數傳遞給高階函數,例如在sort()和filter()函數中使用lambda函數進行排序和篩選。
用于定義簡短的函數,例如對列表、字典等進行映射、過濾等操作。
用于創建臨時的、一次性的函數,例如在GUI編程、事件處理等方面使用。
下面是一些lambda函數的示例:
# 兩個參數相加的lambda函數
add = lambda x, y: x + y
print(add(1, 2)) # 輸出3
# 對列表進行排序的lambda函數
numbers = [5, 2, 7, 1, 3]
numbers.sort(key=lambda x: x % 2 == 0)
print(numbers) # 輸出[5, 7, 1, 3, 2]
# 對字典進行映射的lambda函數
scores = {'Alice': 80, 'Bob': 90, 'Charlie': 75}
grades = {name: 'Pass' if score >= 60 else 'Fail' for name, score in scores.items()}
print(grades) # 輸出{'Alice': 'Pass', 'Bob': 'Pass', 'Charlie': 'Pass'}
總之,lambda函數提供了一種簡潔、靈活的方式來定義匿名函數,它在一些特定的場景下非常有用。