python基础教程之lambda表达式使用方法


Posted in Python onFebruary 12, 2014

Python中,如果函数体是一个单独的return expression语句,开发者可以选择使用特殊的lambda表达式形式替换该函数:

lambda parameters: expression

lambda表达式相当于函数体为单个return语句的普通函数的匿名函数。请注意,lambda语法并没有使用return关键字。开发者可以在任何可以使用函数引用的位置使用lambda表达式。在开发者想要使用一个简单函数作为参数或者返回值时,使用lambda表达式是很方便的。下面是使用lambda表达式作为内置filter函数的一个参数的示例:

aList = [1, 2, 3, 4, 5, 6, 7, 8, 9]
low = 3
high = 7
filter(lambda x, l=low, h=high: h>x>l, aList) # returns: [4, 5, 6]

作为另外一种选择,开发者还可以使用一个可以为函数变量命名的本地def语句。然后,开发者可以使用这个名称作为参数或返回值。下面是使用本地def语句的相同filter示例:

aList = [1, 2, 3, 4, 5, 6, 7, 8, 9]
low = 3
high = 7
def within_bounds(value, l=low, h=high):
return h>value>l filter(within_bounds, aList) #
returns: [4, 5, 6]

因为lambda表达式只是偶尔有用,许多Python用户更喜欢使用def, def要更通用些,如果开发者为函数选择了一个比较合理的名称,会让代码具有更好的可读性。

Python 相关文章推荐
Python类属性与实例属性用法分析
May 09 Python
pandas修改DataFrame列名的方法
Apr 08 Python
Python全排列操作实例分析
Jul 24 Python
python实现简单五子棋游戏
Jun 18 Python
Python3远程监控程序的实现方法
Jul 15 Python
pygame实现烟雨蒙蒙下彩虹雨
Nov 11 Python
python中利用matplotlib读取灰度图的例子
Dec 07 Python
python基于celery实现异步任务周期任务定时任务
Dec 30 Python
python 视频下载神器(you-get)的具体使用
Jan 06 Python
python实战之一步一步教你绘制小猪佩奇
Apr 22 Python
Python中OpenCV实现查找轮廓的实例
Jun 08 Python
Python selenium绕过webdriver监测执行javascript
Apr 12 Python
Python的print用法示例
Feb 11 #Python
python中的yield使用方法
Feb 11 #Python
python重试装饰器示例
Feb 11 #Python
python网络爬虫采集联想词示例
Feb 11 #Python
python基础教程之实现石头剪刀布游戏示例
Feb 11 #Python
python使用递归解决全排列数字示例
Feb 11 #Python
python基础教程之popen函数操作其它程序的输入和输出示例
Feb 10 #Python
You might like
创建数据库php代码 用PHP写出自己的BLOG系统
2010/04/12 PHP
php判断str字符串是否是xml格式数据的方法示例
2017/07/26 PHP
ThinkPHP5分页paginate代码实例解析
2020/11/10 PHP
web基于浏览器的本地存储方法应用
2012/11/27 Javascript
jquery入门—编写一个导航条(可伸缩)
2013/01/07 Javascript
javascript点击按钮实现隐藏显示切换效果
2016/02/03 Javascript
jQuery ajax MD5实现用户注册即时验证功能
2016/10/11 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
Node.js制作简单聊天室
2017/01/12 Javascript
Node.js中用D3.js的方法示例
2017/01/16 Javascript
JavaScript函数基础详解
2017/02/03 Javascript
简单实现bootstrap导航效果
2017/02/07 Javascript
jQuery插件MovingBoxes实现左右滑动中间放大图片效果
2017/02/28 Javascript
Bootstrap实现翻页效果
2017/11/27 Javascript
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
2018/09/29 Javascript
vue 全局封装loading加载教程(全局监听)
2020/11/05 Javascript
JS模拟实现京东快递单号查询
2020/11/30 Javascript
9种python web 程序的部署方式小结
2014/06/30 Python
Python随手笔记之标准类型内建函数
2015/12/02 Python
关于Python如何避免循环导入问题详解
2017/09/14 Python
win8下python3.4安装和环境配置图文教程
2018/07/31 Python
python实现一组典型数据格式转换
2018/12/15 Python
Django工程的分层结构详解
2019/07/18 Python
python3字符串操作总结
2019/07/24 Python
解决pycharm启动后总是不停的updating indices...indexing的问题
2019/11/27 Python
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
描述JSP和Servlet的区别、共同点、各自应用的范围
2012/10/02 面试题
党委班子对照检查材料
2014/08/19 职场文书
2014年局领导班子自身建设情况汇报
2014/11/21 职场文书
自主招生自荐信格式
2015/03/04 职场文书
产品调价通知函
2015/04/20 职场文书
汽车销售员工作总结
2015/08/12 职场文书
2016应届毕业生自荐信范文
2016/01/28 职场文书
干货:如何写好观后感 !
2019/05/21 职场文书
掌握这项技巧,一年阅读300本书不是梦
2019/09/12 职场文书
bootstrapv4轮播图去除两侧阴影及线框的方法
2022/02/15 HTML / CSS