【学习笔记】36、lambda是单表达式函数
lambda是单表达式函数
一、lambda的定义
Python中的lambda关键字可用来快速声明小型匿名函数。lambda函数的行为与使用def关键字声明的常规函数一样,可以用于所有需要函数对象的地方。
比如两个数的加减,就可以如下定义:
那么lambda就比def声明的函数少写了几个字符嘛?
其实从语法上来讲表达式位于lambda内部,lambda不需要先将函数对象和名称绑定,只需要在lambda中创建一个想要执行的表达式,然后像普通函数那样立即调用即可。
所以上面的例子也可以这样实现:
lamdba和普通函数还有一点不同,lambda函数只能含有一个表达式,不能使用语句或注解,当然也不能使用返回语句。那么如何从lambda返回值呢?执行lambda函数时会计算其中的表达式,然后自动返回表达式的结果,所以总会有一个隐式的返回表达式,因此lambda函数也称为单表达式函数。
二、lambda的使用场景
因为lambda是匿名的,所以不需要事先分配一个名字,因此,lambda能方便灵活地快速定义。比如在对可迭代对象进行排序时,就可以使用lambda表达式定义简短的key函数。
lambda与普通嵌套函数一样,可以像词法闭包那样工作。比如下面的例子,即使n在adder()函数中定义,但在lambda中仍可以访问。
三、不要过度使用lambda
避免使代码变得难以理解。
【学习笔记】36、lambda是单表达式函数相关推荐
- OpenCV学习笔记(三十六)——Kalman滤波做运动目标跟踪 OpenCV学习笔记(三十七)——实用函数、系统函数、宏core OpenCV学习笔记(三十八)——显示当前FPS OpenC
OpenCV学习笔记(三十六)--Kalman滤波做运动目标跟踪 kalman滤波大家都很熟悉,其基本思想就是先不考虑输入信号和观测噪声的影响,得到状态变量和输出信号的估计值,再用输出信号的估计误差加 ...
- 在php中表单传值怎么用,PHP学习笔记 01 之表单传值
一.HTML传值/PHP接收方法 1.GET(地址栏+问号+数据信息) (1)方式一:表单Form: method = 'get' GET接收数据方式: $_GET['表单元素name对应的值] (2 ...
- 机器视觉学习笔记(4)——单目摄像机标定参数说明
机器视觉学习笔记(4)--单目摄像机标定参数说明 标签: 机器视觉 1.针孔摄像机模型 在介绍摄像机标定参数之前,需要先简单说一下针孔摄像机的原理.投影平面到小孔的距离为焦距f,物体到小孔的距离为Z, ...
- OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十
OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...
- HTML/CSS学习笔记02【表单标签】
w3cschool菜鸟教程.CHM(腾讯微云):https://share.weiyun.com/c1FaX6ZD HTML/CSS学习笔记01[概念介绍.基本标签.表单标签][day01] HTML ...
- MYSQL学习笔记三:日期和时间函数
MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...
- 【学习笔记】微体系结构-单周期、多周期、流水线
[学习笔记]微体系结构-单周期.多周期.流水线 前言 一.单周期 单周期直通计算机的内核结构 寄存器-寄存器数据通路 1.Load操作 2.Store操作 3.跳转指令 4.条件分支 示例 性能分析 ...
- Python学习笔记---------廖雪峰(基础和函数)
Python学习笔记---------廖雪峰(基础和函数)
- C++学习笔记_3_ C++入门 内联函数
C++学习笔记_3_ C++入门 内联函数 目录 C++学习笔记_3_ C++入门 内联函数 一.内联函数 1.查看方式 2.特性 宏的优缺点 C++有哪些技术替代宏? 一.内联函数 以inline修 ...
最新文章
- ArcGIS Engine中的Symbols详解
- centos7 安装无线工具包wireless-tools 包含 iwlist,iwconfig命令
- 王式安概率论与数理统计基础课手写笔记-第一章概率与事件-第二章随机变量及其分布
- JAVA通过SSL证书创建MS AD账户及设置密码
- css布局与ldquo;切图rdquo;
- 亲,如果你笑了,记住给我留言!
- CSS UI状态伪类选择器
- airtestide 下载后打不开_惠普打印机驱动怎么下载 惠普打印机驱动安装方法【步骤】...
- 590. N叉树的后序遍历
- java 英语_Java常用英语汇总(更新升级版)
- 超逼真AI设计师,谷歌大脑推出新的文本生成图像模型Imagen
- Poi 4.0设置自定义背景颜色
- 汇佳学校|张思孝赵启阳:音乐制作歌曲演唱,伯克利音乐学院录取
- Git 出错error: Pulling is not possible because you have unmerged files
- 商务通传递中文及样式
- 博主文章导航(分门别类,实时更新,永久置顶)
- 服务器硬盘故障问题有哪些
- php中水仙花数的求法,php 求水仙花数优化
- CentOS 7 Nginx 控制脚本
- Vungle 视频广告接入踩坑记