【Python】lambda匿名函数

骑猪看日落 2023-09-27 17:46 195阅读 0赞

文章目录

  • 前言
  • lambda匿名函数的定义
  • lambda匿名函数的使用
  • 使用lambda匿名函数写一个计算器
  • 总结

前言

在Python中,可以使用def 关键字定义函数,使用def定义的关键字是有名称的,在调用时可以重复使用.还有一种是使用lambda关键字进行函数的定义,这个方式定义的函数是匿名函数,只能临时使用一次
本文主要讲解lambda匿名函数

lambda匿名函数的定义

  1. lambda 形参: 函数体

注意:匿名函数的函数体只能写一行,无法写入多行代码

lambda匿名函数的使用

例如:

  1. def test(func):
  2. ret = func(1, 2)
  3. print(f"ret = {
  4. ret}")
  5. test(lambda x, y: x + y)
  6. # 输出结果: ret = 3

执行逻辑:
在这里插入图片描述
使用lambda匿名函数可以直接帮你把结果返回给调用对象,因此不需要写return语句.

刚才提到了lambda匿名函数中的方法体只能写一行代码,否则就会报错.
在这里插入图片描述

使用lambda匿名函数写一个计算器

看到这是不是感觉lambda匿名函数挺奇怪的,可读性也不好,那它为什么要设置它呢?

存在即合理,其实使用lambda匿名函数也是做很多事情.我们在后面的学习中也会大量使用到lambda表达式 .就比如我们要写一个加减乘除的计算器,但只能在一个方法完成加减乘除的运算.这个时候就可以使用lambda表达式
看代码:

  1. def func(compote, x, y):
  2. ret = compote(x, y)
  3. print(f"ret = {ret}")
  4. func(lambda x, y: x + y, 6, 2)
  5. func(lambda x, y: x - y, 6, 2)
  6. func(lambda x, y: x * y, 6, 2)
  7. func(lambda x, y: x // y, 6, 2)

运行截图:
在这里插入图片描述
可以看到这种方法只需要使用写一个方法,便可完整加减乘除的运算. 就是传入参数时比较麻烦.而不使用这种方式,写四个计算的函数也可以完成.相较于使用lambda表达式来说则是定义函数时比较麻烦.大家看需求使用即可.

总结

lambda表达式还是很重要的,在后面的学习中我们也会大量使用到lambda匿名函数.

感谢你的观看!希望这篇文章能帮到你!
python专栏在不断更新中,欢迎订阅!
“愿与君共勉,携手共进!”
在这里插入图片描述

发表评论

表情:
评论列表 (有 0 条评论,195人围观)

还没有评论,来说两句吧...

相关阅读

    相关 匿名函数

    以下全是个人理解以及网上查找而来,如有不对请指正...   匿名函数 几种匿名的写法 (function()\{\})();最常见到的; (function()\{\

    相关 PHP匿名函数

    没有名字的函数 1.没有名字的函数如何定义? 函数的定义在编辑阶段,会被系统存放到代码区,会有一个内存地址。需要通过变量来保存函数的内存地址。 匿名函数语法如下:

    相关 python 匿名函数

    当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便。 在Python中,对匿名函数提供了有限支持。还是以`map()`函数为例,计算f(x)

    相关 匿名函数

    匿名函数 匿名函数,即没有名字的函数 Python中借助Lambda表达式构建匿名函数 匿名函数,必须使用lambda关键字定义,只能写在一行上,也被称

    相关 匿名函数lambda

    在Python中有个匿名函数特性非常的便捷和有用,用关键字lambda就可以声明一个匿名函数,所以很多时候直接称呼为lambda函数。 每次介绍新特性的时候,我们都要反问什么