当我们需要一个函数只在当前上下文中使用,不需要被多处引用时,可以使用匿名函数。
Python中使用lambda关键字创建匿名函数,其语法格式如下:
lambda [arg1 [, arg2, ..., argn]]: expression
其中,[arg1, arg2, …, argn] 为可选参数,expression 为匿名函数的表达式。该函数的返回值为表达式的值。
下面是一个示例,用 lambda 定义了一个简单的函数:
add = lambda x, y: x + y
print(add(1, 3)) # output: 4
上面的代码中,我们使用lambda定义了一个函数add,该函数接收两个参数x和y,返回x+y。
另一个示例,通过匿名函数实现列表元素的排序:
students = [
{'name': 'Tom', 'gender': 'male', 'score': 90},
{'name': 'Lily', 'gender': 'female', 'score': 94},
{'name': 'Lucy', 'gender': 'female', 'score': 88},
{'name': 'Jack', 'gender': 'male', 'score': 76},
]
students.sort(key=lambda x:x['score'], reverse=True)
print(students)
上面的代码中,我们使用了sort函数按照学生分数从高到低排列。在sort中,我们使用lambda表达式排序的关键字为score,表示按照score的值进行排序。
以上是创建Python匿名函数的详细攻略,使用lambda实现的匿名函数也应当遵守函数的定义规范,代码可读性较差并且只能进行简单计算,需要谨慎使用。