美文网首页
lambda表达式

lambda表达式

作者: 蚂蚁牙齿不黑 | 来源:发表于2020-05-22 13:04 被阅读0次

在 Python中除了def 可以声明一个函数以为,使用lambda表达式也是生成函数对象的表达式形式,对于一个比较简单的,在函数中只有一小部分代码的时候,使用lambda表达式更加清晰

  • 语法格式
    fn = lambda[arg1,arg2,arg3]:执行语句
def sum(x,y):
    return x + y
sum2 = lambda x , y : x + y
print(sum(1,1))
print(sum2(1,1))
结果都为2

结论:从上面的栗子中可以看出sum和sum2的执行效果是一样的

  • 作为回调函数
def test(callback):
    print('1')
    callback()
    print('3')

test(lambda:print('2'))
打印结果:
1
2
3

结论:lambda表达式可以作为函数的参数,并在该函数中执行

  • 与map 函数结合

求出数组中成员之和

arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list(map(lambda x:x * x,arr)))
  • 与fifter函数结合
    求出数组中的奇数
arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
print(list(filter(lambda x:x % 2 == 1,arr)))

相关文章

网友评论

      本文标题:lambda表达式

      本文链接:https://www.haomeiwen.com/subject/nkrqahtx.html