在Python中,lambda函數是一種匿名函數,它可以在一行代碼中定義簡單的函數。它通常用于需要一個簡單的函數,但不想專門為其定義一個命名函數的情況。
lambda函數的基本語法如下:
lambda arguments: expression
其中,arguments是函數的參數,可以是任意數量的參數,用逗號分隔。expression是函數體,表示函數的返回值。
以下是一個簡單的lambda函數的示例,用于求兩個數的和:
sum = lambda x, y: x + y
print(sum(3, 4)) # 輸出結果為 7
lambda函數也可以用于對列表等可迭代對象進行排序、篩選等操作。例如,對一個列表進行排序:
numbers = [5, 2, 9, 1, 7]
sorted_numbers = sorted(numbers, key=lambda x: x)
print(sorted_numbers) # 輸出結果為 [1, 2, 5, 7, 9]
lambda函數還可以作為其他函數的參數傳遞,例如在map()
函數中使用lambda函數對列表的每個元素進行操作:
numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda x: x**2, numbers)
print(list(squared_numbers)) # 輸出結果為 [1, 4, 9, 16, 25]
需要注意的是,lambda函數通常用于簡單的函數邏輯,如果需要較復雜的函數邏輯,應該使用普通的命名函數來實現。