• python lambda简单介绍


    python lambda

    在python中,如果想要创建函数需要使用关键字def,而如果想要创建匿名函数,就需要使用lambda。

    lambda创建的函数和def创建的函数有什么区别?

    1. def创建的函数是有名称的,而lambda没有
    2. lambda会创建一个函数的对象,但是却不会把对象给一个标识符,而def 会把函数对象赋值给一个变量
    3. def 是一条语句,而lambda它只是一个表达式

      y = lambda x:print(x)
      y(10) # 10

    例如上面,通过lambda创建了一个表达式,x相当于形参,代码整体来看非常的简单高效。

    通常情况下,lambda 可以直接作为列表或者字典的成员,如下:

    # 创建一个列表,将通过表达式lambda创建的表达式当做列表中的元素
    list_test = [lambda a:a*3,lambda b:b*4]
    # 给列表中设置值
    x = list_test[0](3)
    y = list_test[1](2)
    print(x,y) # 9 8 

    那么相同的操作,在列表中,只能够使用lambda,没有办法使用def替代,因为def是语句,在列表中只能够是表达式。而lambda表达式在“:”之后只能有一个表达式,通常情况下,return语句能够返回的可以放在lambda后面,不能够返回的同样也不能够放在其后。因此,最好不要将if或者for这样的语句放在lambda表达式的后面,lambda最好只用来定义一些简单的函数。

  • 相关阅读:
    团队项目的NABC(截图软件)
    《梦断代码》读后感_3
    《梦断代码》读后感_2
    毕设今日总结(二)
    毕业设计今日总结(一)
    QT中文乱码解决方法
    课堂练习——最大联通之数组
    《浪潮之巅》读书笔记3
    《浪潮之巅》读书笔记2
    《浪潮之巅》读书笔记1
  • 原文地址:https://www.cnblogs.com/yujihaia/p/7468228.html
Copyright © 2020-2023  润新知