python匿名函数
关键字lambda
lambad 参数列表 :运算表达式
一般匿名函数比较简单,而且可以省略def表达,语法较简洁。
def a(num): return num + 1 print(a(1)) b = lambda num : num + 1 print(b(1))
2 2
应用场景
(1)结合内置函数使用
比如对二维数组排序
a = [[20, 10], [10, 50], [30, 40]]
b = sorted(a)
print(a)
print(b)
c = sorted(a, key=lambda x: x[0]) # 按照第一列升序排序与sorted(a)相同
print(c)
c = sorted(a, key=lambda x: x[1]) # 按照第二列升序排序
print(c)
def fun(x):
return x[1]
c = sorted(a, key=fun)
print(c)
[[20, 10], [10, 50], [30, 40]]
[[10, 50], [20, 10], [30, 40]]
[[10, 50], [20, 10], [30, 40]]
[[20, 10], [30, 40], [10, 50]]
[[20, 10], [30, 40], [10, 50]]
(2)将匿名函数作为参数处理
def fun(a, b, fun1): t = fun1(a, b) return t d = fun(1, 2, lambda a, b: a + b) print(d)
3

浙公网安备 33010602011771号