python lambda表达式(匿名函数)及用法
发布时间:2023-05-18 16:57:00
发布人:syq
在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表达式的基本用法。