Python---6.lambda表达式

来源:互联网 发布:js引用高德地图 编辑:程序博客网 时间:2024/06/04 00:23

匿名函数lambda表达式

  • lambda是一种表达式,而非语句。
    • 函数为单一的表达式,而非大段的语句块,设计目标是为了实现简单函数
  • 优势:
    • 函数嵌套更简便
    • 方便嵌入列表或者字典表之类的序列以执行操作
    • 替代多重分支
    • 作为回调函数处理句柄便捷

举例:

  1. 用于函数嵌套
def func(x):    f1 = lambda x: x ** 2    f2 = lambda x: x ** 3    return f1(x) + f2(x)print(func(2))#-------------运行结果:12
  1. 方便嵌入列表以执行操作
x, y = 5, 3func_list = [lambda a,b:a+b,lamdba a,b:a-b, lambda a,b: a*b]for func in func_list:    prin(func(x, y))#------------------------运行结果:8212
  1. 与字典表结合替代多重分支
x, y = 5, 3action = {  'a':lambda a, b:a+b,  's':lambda a, b:a-b,  'm':lambda a, b:a/b,  'd':lambda a, b:a*b}print(action.get('a')(x, y))#-----------------------------------运行8
  1. 作为回调函数
x, y = 5, 3def calc(a, b, func):    return func(a, b)print(calc(x, y, lambda a, b:a-b))#--------------------------------运行结果:2

小结

  • 以上是自己学python时的一些笔记,感觉写在本上不方便,正好利用闲暇时间腾到csdn上。
  • 自己的总结,如果有那些地方不合理或有有误,请指正。
  • 知识体系图:[Python3基础
原创粉丝点击