zoukankan      html  css  js  c++  java
  • 匿名函数


    print(lambda x: x * 2)

    # <function <lambda> at 0x00000000005D3E18>
    # 输出为内存地址,为了可以执行,需要赋值给一个变量,再在后面加个括号
    func = lambda x: x * 2
    print(func(10))

    # 或许可以简化如下。。。
    print((lambda x: x * 2)(10))

    # 多个返回值时,要用括号括起来
    func = lambda x, y, z: (x + 1, y + 1, z + 1)
    print(func(1, 2, 3))

    ---------------------------------------------

    lambda是一个表达式,而并非语句

    因为lambda是一个表达式,所以在python语言中可以出现在def语句所不能出现的位置上;
    lambda与def语句相比较,后者必须在一开始就要将新函数命名;而前者返回一个新函数,可以有选择性的赋值变量名。

    lambda主体只是单个表达式,并而一个代码块

    lambda与普通函数function定义方法来比较它的功能更小,它只是一个为简单函数所服务的对象,而def能处理更大型的数据任务。

    为什么要使用lambda?

    用python学习手册中的一段话来回答这个问题非常好“lambda有起到速写函数的作用,允许在使用的代码内嵌入一个函数的定义。在仅需要嵌入一小段可执行代码的情况 下,就可以带来更简洁的代码结构。”lambda的使用在python基础知识学习中就会遇到,但真正应用时还是在python进阶的阶段,这时需要你做更深入学习。




  • 相关阅读:
    jquery 年月日分离
    Jquery实现常用的分类搜索跳转
    SQL Server 利用触发器对多表视图进行更新
    TEA XTEA XXTEA 学习笔记
    IDApro自带动调初探
    HECTFreverse部分writeup
    NCTF2021逆向WP(部分)
    buuctf[刮开有奖]writeup
    base64学习笔记
    深夜写文——致19岁的自己
  • 原文地址:https://www.cnblogs.com/freelandun/p/7113675.html
Copyright © 2011-2022 走看看