【Python函数】匿名函数

  • 定义:
    • 短小的回调函数
  • 好处:
    • 省去定义函数的步骤,更加简洁
  • 生命周期:
    • 使用时定义-调用完
  • 返回函数本身以及内存位置 at xxxx>
  • 语法:lambda [ar1[,arg2]]: expression
    • arguments是参数
    • expression是返回值的表达式
    • 场景1: 不调用只定义,返回函数本身以及内存地址
      
      a = lambda: 100
      
      print(a)  #  at 0x10881ad30>
      
      场景2: 赋值给变量,使用变量调用
      
      a = lambda x: x**2
      
      print(a(2))  # 4
      
      
      实现两数相加
      
      a = lambda x, y: x+y
      
      print(a(2,3))  # 5
      
      
      
      场景3: 作为函数的参数使用
      
      def apply(func, n):
      
          return func(n)
      
      
      print(apply(lambda x: x*2, 5))  # 10
      
      
      场景4: 无参数传递
      
      a = lambda: 100
      
      print(a())  # 100
      
      
      (目前有疑惑)场景5:
      result = []
      
      for i in range(3):
      
          result.append(lambda: i)
      
      for y in result:
      
          print(y())   # 4
      
          break
      
      
      场景6: 函数嵌套
      
      a = lambda x: (lambda y: (lambda z: z))
      
      print(a(10)(20)(30))  # 30

你可能感兴趣的:(Python,python)