美文网首页
Python学习25:匿名函数和递归函数

Python学习25:匿名函数和递归函数

作者: 简洁的书写 | 来源:发表于2024-09-03 21:16 被阅读0次

       在之前面学习了定义函数、调用函数以及设置函数的参数。现在将会补充函数中两个常见的知识点,一个是匿名函数,另一个是递归函数。

       在前面,我们使用def 函数名(参数):的结构来定义一个函数。如果,我们把def定义的函数看作“有名字函数”。那么还有一类函数,无需定义函数名,即匿名函数。

       匿名函数(Anonymous Function)这段代码创建了一个匿名函数,并赋值给了变量square。然后通过变量名square调用函数,输出了结果。

# 使用lambda创建匿名函数,并赋值给变量square
square = lambda  x:x*x     
# 通过变量名square,传入参数9,调用该匿名函数,并输出
print(square(9))

lambda:lambda是一个关键字,用来创建匿名函数。
空格:关键字lambda和后面的式子间要有一个空格,这是创建匿名函数的固定格式。
形参:冒号前面的x是匿名函数的参数,也就是形参,用于接收实参传递来的数据。
冒号:一个冒号是匿名函数的固定格式。冒号前面是形参,冒号后面是进行计算的表达式。
表达式:冒号后面的表达式就是函数的返回值。表达式的结果将返回到调用函数的地方。所以,匿名函数可以看作return型函数的简便写法。
变量:将匿名函数,赋给一个变量(这里是square)。后续可以通过该变量来调用匿名函数。
调用函数:只要将匿名函数赋值给了变量,就需要通过对应的变量名来调用函数。本例中,通过变量square来调用该匿名函数,在括号()中传入了实参9。

多个形参

匿名函数也可以设置多个形参,形参间以逗号隔开。

立方体体积
定义一个“匿名函数”,用于返回立方体的体积,并将其赋值给变量power。
然后通过该变量名,传入参数10, 8, 6,调用函数,并输出计算的结果。
体积公式为:长*宽*高

# TODO 定义匿名函数,设置三个形参,用于返回立方体的体积,并赋值给变量power
power = lambda a,b,c:a*b*c
# TODO 通过变量名,依次传入参数10,8,6,调用该匿名函数,并输出
print(power(10,8,6))

匿名函数的局限性

     匿名函数使用起来比较方便,但是它也有局限性。一般只能用来改写包含了return的简单函数。示例中,是匿名函数和普通函数的等价写法。

递归(Recursive),将函数在定义中调用函数自身的过程称为递归。

示例:这段函数定义一个求和函数sum,并通过递归的方式求得了5以内的数字的累加和。

# 定义名为sum()函数,传入参数n
def sum(n):
    if n == 1:
        return 1
    return n + sum(n-1)
# 调用sum()函数,传入参数5,并输出
print(sum(5))

相关文章

  • Python精简学习(九)

    Python精简学习之函数之匿名函数-匿名函数

  • python学习_day10

    匿名函数和递归函数的使用

  • 13.Python编程:lambda表达式(匿名函数)

    前面学习了Python中的函数,本文学习一下匿名函数。Python 使用 lambda 来创建匿名函数。所谓匿名,...

  • python语法(六)

    递归 计算阶乘:递归函数一定要设置结束条件,否则就会死掉 匿名函数 匿名函数作为实参 把匿名函数当参数传入,pyt...

  • day9 函数

      今天主要学习匿名函数、变量的作用域、递归函数、模块等内容。   1、匿名函数的声明   格式为:函数名= la...

  • wangyanhua--python2

    基本函数的使用 匿名函数 常用系统高阶函数 高阶函数 常用系统高阶函数 Python递归 安装第三方库 三国小说人...

  • python 10天快速教程 Day4

    本节重点 递归函数 匿名函数 python内置函数 切片 列表生成式 内存地址 可变类型与不可变类型详解 公共运算...

  • Python 37 匿名函数

    特殊的函数定义和使用 匿名函数 传递函数的参数 递归函数 1)匿名函数 #定义一个名称为max的函数,传递两个参数...

  • Python精简入门学习(十)

    Python精简入门学习之递归函数-递归 -递归 -如图所示

  • 递归函数 & 匿名函数

    递归函数:一个函数可以调用其他函数如果一个函数在内部不调用其他的函数,而是自己本身的话,这个函数就是递归函数编程语...

网友评论

      本文标题:Python学习25:匿名函数和递归函数

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