• 技术文章 >Python技术 >Python基础教程

    python3中的lambda函数是什么?怎么用?

    2020-11-07 16:17:21原创2551
    Python函数千千万,小编经常被问到关于各种各样的函数,一直都有回复,但是介于还有大部分小伙伴可能不了解,因此,每当小伙伴咨询小编的时候,都会记录下来,给大家讲解,今天也不厉害,一起来看下吧~

    概述

    匿名函数,顾名思义即没有名称的函数,和def定义的函数的区别在于匿名函数创建后返回函数本身(即匿名函数不需要return来返回值),表达式本身结果就是返回值,而def创建后则赋值给一个变量名,在Python中,我们利用关键词lambda创建匿名函数,以下是匿名函数lambda表达式的形式:

    lambda arg1,arg2,.....argn:expression

    以下为一些lambda的特点:

    l lambda 是一个表达式,而不是一个语句,即我们可以在任何可以使用表达式的场景一样使用lambda。

    l lambda 的主体也是一个表达式,即和def定义的函数一样,lambda也有函数主体,不过lambda的主体仅仅是一个表达式,所以其使用的功能受到较大的限制。

    lambda使用——无参匿名函数

    # 可以将lambda直接传递给一个变量,像调用一般函数一样使用
    B = lambda :True
    print(B())
    # 等价于
    def BF():
     return True
    print(BF())

    示例结果:

    有参匿名函数

    支持多个参数

    参数无默认值

    two_sum = lambda x, y: x + y
    # 等同于:
    def two_sum(x, y): return x + y
    print(two_sum(1,2))

    示例结果:

    3

    参数带默认值

    sum_with_100 = lambda x, y=100: x + y
    # 等同于:
    def sum_with_100(x, y=100): return x + y
    print(sum_with_100(200))

    示例结果:

    300

    一些使用实例

    1. 结合三元表达式求两值中最小值

    lower = lambda x,y: x if x<y else y
    print(lower(7,100))

    实例结果:

    7

    结合基础内容加实际内容,大家可以充分学习这个函数的使用技巧了哦~如果还想知道更多的python知识,可以到python学习网进行查询。

    专题推荐:python3中的lambda函数用法
    品易云
    上一篇:python中的Jupyter Notebook有哪些模式? 下一篇:如何使用python3字符串格式化输出?

    相关文章推荐

    • 如何实现python3中的函数引用?• 如何使用python跨文件调用变量?• 如何使用python3函数调用局部变量?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网