034 匿名函数

函数式编程

  • Functional Programming
  • 一种基于 lambda 演算的编程方式
    • 程序中只有函数
    • 函数可以作为参数,也可以作为返回值
  • 纯函数式编程语言
    • LISP
    • Haskell
    • ...
  • Python 函数式编程
    • 只是借鉴函数式编程的一些特点
    • 可以理解成一半函数式一半 Python
  • 相关内容
    • 匿名函数 lambda (本篇讲此项)
    • 高阶函数
    • 返回函数
    • 装饰器
    • 偏函数

函数

  • 功能:最大程度复用代码
  • 不足之处
    • 如果函数很小,很短,则会造成啰嗦
    • 如果函数被调用次数少,则会造成浪费
    • 对于阅读者来说,造成阅读流程的被迫中断

匿名函数

lambda 表达式也称“匿名函数”

  • 不是一个代码块
  • 仅仅是一个表达式
  • 函数体相对简单
  • 可以有参数
  • 若参数超过一个,可以用逗号隔开

lambda 表达式的用法

  • lambda 开头
  • 紧跟一定数量的参数(若有)
  • 参数后用冒号和表达式主题隔开
  • 因为只是一个表达式,所以没有 return

举例

例1

>>> square = lambda x: x ** 2
>>> square(5)
25
>>> 

例2

>>> delta = lambda a,b,c: b*b - 4*a*c
>>> delta(1, 2, 1)
0
>>> 
原文地址:https://www.cnblogs.com/yorkyu/p/12063319.html