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