美文网首页
《Python 核心技术与实战》 学习笔记 Day10 简约不简

《Python 核心技术与实战》 学习笔记 Day10 简约不简

作者: _相信自己_ | 来源:发表于2023-01-24 21:14 被阅读0次

    匿名函数基础

    第一 lambda 是一个表达式(expression),并不是一个语句(statement)。

    • 所谓的表达式,就是用一系列“公式”去表达一个东西,比如x + 2、 x**2等等;
    • 而所谓的语句,则一定是完成了某些功能,比如赋值语句x = 1完成了赋值,print 语句print(x)完成了打印,条件语句 if x < 0:完成了选择功能等等。
    • lambda 可以用在一些常规函数 def 不能用的地方,比如,lambda 可以用在列表内部,而常规函数却不能。
    • lambda 可以被用作某些函数的参数,而常规函数 def 也不能。

    第二 lambda 的主体是只有一行的简单表达式,并不能扩展成一个多行的代码块。
    lambda就是为了让它和常规函数各司其职:lambda 专注于简单的任务,而常规函数则负责更复杂的多行逻辑。

    lambda argument1, argument2,... argumentN : expression
    

    为什么要使用匿名函数?

    1. 减少代码的重复性;
    2. 模块化代码。

    函数式编程

    • 所谓函数式编程,是指代码中每一块都是不可变的(immutable),都由纯函数(pure function)的形式组成。这里的纯函数,是指函数本身相互独立、互不影响,对于相同的输入,总会有相同的输出,没有任何副作用。
    • 函数式编程的优点,主要在于其纯函数和不可变的特性使程序更加健壮,易于调试(debug)和测试;缺点主要在于限制多,难写。

    相关文章

      网友评论

          本文标题:《Python 核心技术与实战》 学习笔记 Day10 简约不简

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