在Python中,lambda表達(dá)式(也稱為匿名函數(shù))是一種創(chuàng)建簡單函數(shù)的方式,它可以在不使用`def`關(guān)鍵字定義函數(shù)的情況下快速創(chuàng)建函數(shù)。lambda表達(dá)式通常用于需要一個簡短的函數(shù)定義,并且在其他地方不會再被引用的情況下。
以下是lambda表達(dá)式的基本語法:
lambda arguments: expression
其中,`arguments`是函數(shù)的參數(shù)列表,可以是零個或多個參數(shù),用逗號分隔。`expression`是一個表達(dá)式,定義了函數(shù)的返回值。
下面是一些使用lambda表達(dá)式的示例:
示例1:定義一個接受兩個參數(shù)并返回它們之和的lambda函數(shù)。
add = lambda x, y: x + y
result = add(3, 4)
print(result) # 輸出: 7
示例2:將lambda函數(shù)作為參數(shù)傳遞給其他函數(shù)。
numbers = [1, 2, 3, 4, 5]
squared = list(map(lambda x: x ** 2, numbers))
print(squared) # 輸出: [1, 4, 9, 16, 25]
示例3:在字典排序中使用lambda函數(shù)作為關(guān)鍵字函數(shù)。
students = [
{"name": "Alice", "age": 25},
{"name": "Bob", "age": 22},
{"name": "Charlie", "age": 28}
]
students.sort(key=lambda x: x["age"])
print(students)
# 輸出:
# [{'name': 'Bob', 'age': 22},
# {'name': 'Alice', 'age': 25},
# {'name': 'Charlie', 'age': 28}]
lambda表達(dá)式通常用于簡單的功能,它們的主要目的是提供一種便捷的方式來定義內(nèi)聯(lián)函數(shù)。但請注意,由于lambda函數(shù)是匿名的,沒有函數(shù)名,因此在處理復(fù)雜邏輯、需要重用的函數(shù)或需要更好的可讀性時,最好使用常規(guī)的函數(shù)定義(使用`def`關(guān)鍵字)。
希望以上示例能夠幫助你理解Python中l(wèi)ambda表達(dá)式的基本用法。