简单介绍Python中的filter和lambda函数的使用


Posted in Python onApril 07, 2015

filter(function or None, sequence),其中sequence 可以是list ,tuple,string。这个函数的功能是过滤出sequence 中所有以元素自身作...

filter(function or None, sequence),其中sequence 可以是list ,tuple,string。这个函数的功能是过滤出sequence 中所有以元素自身作为参数调用function时返回True或bool(返回值)为True的元素并以列表返回. filter只能接受两个参(function,sequence) ,其中函数function中只能返回一个值

先上一段简单的代码:
 

print max(filter(lambda x: 555555 % x == 0, range(100, 999)))

代码的意思是输出 555555 最大的三位数的约数是多少。

首先,这段代码的第一个知识点是python的内置函数 filter

filter()函数,是用来过滤列表的。最简单的说法就是 用一个函数来过滤一个列表,把列表的每一项传递进入过滤函数,过滤函数返回false就从这个列表中删除该项。

filter()函数包括两个参数, function和list。即该函数根据function参数返回的结果是否为真来过滤list参数中的项,最后返回一个新的列表。

简单来讲,filter()函数相当于下面的代码:
 

c = [b for b in a1 if b > 2]
print c

第二个知识点是 lambda()函数

Python支持这种语法,它允许用户快速定义单行的最小函数,这些叫做 lambda的函数,是从Lisp借用来的。
 

def f(x):
  return x * 2
g = lambda x: x * 2
(lambda x: x * 2)(3)

根据代码可以看到,lambda函数完成了普通函数相同的事情,并且,lambda在参数列表周围没有括号,并且忽略了return关键字(return隐含存在,因为整个函数只有一行,且该函数没有名称,但可以将它赋值给一个变量进行调用)

最后一段代码展示了lambda函数只是一个内联函数。

Python 相关文章推荐
Python 命令行参数sys.argv
Sep 06 Python
Python采用Django开发自己的博客系统
Sep 29 Python
Python网络爬虫出现乱码问题的解决方法
Jan 05 Python
python 获取网页编码方式实现代码
Mar 11 Python
python使用logging模块发送邮件代码示例
Jan 18 Python
python删除字符串中指定字符的方法
Aug 13 Python
django2.0扩展用户字段示例
Feb 13 Python
python代码编写计算器小程序
Mar 30 Python
python如何实现从视频中提取每秒图片
Oct 22 Python
Python列表原理与用法详解【创建、元素增加、删除、访问、计数、切片、遍历等】
Oct 30 Python
利用Python脚本实现自动刷网课
Feb 03 Python
pygame实现飞机大战
Mar 11 Python
解析Python中的变量、引用、拷贝和作用域的问题
Apr 07 #Python
在Python中利用Pandas库处理大数据的简单介绍
Apr 07 #Python
详解Python中的join()函数的用法
Apr 07 #Python
Python中用于去除空格的三个函数的使用小结
Apr 07 #Python
简单介绍Python中的len()函数的使用
Apr 07 #Python
Python中endswith()函数的基本使用
Apr 07 #Python
举例详解Python中的split()函数的使用方法
Apr 07 #Python
You might like
PHP类继承 extends使用介绍
2014/01/14 PHP
对象特征检测法判断浏览器对javascript对象的支持
2009/07/25 Javascript
js获取当前select 元素值的代码
2010/04/19 Javascript
一个简单的js鼠标划过切换效果
2010/06/30 Javascript
javascript中onmouse事件在div中失效问题的解决方法
2012/01/09 Javascript
动态加载jquery库的方法
2014/02/12 Javascript
js document.write()使用介绍
2014/02/21 Javascript
指定区域的图片自动按比例缩小的js代码(防止页面被图片撑破)
2014/02/21 Javascript
js生成验证码并直接在前端判断
2015/05/15 Javascript
Javascript字符串拼接小技巧(推荐)
2016/06/02 Javascript
javascript实现简单的可随机变色网页计算器示例
2016/12/30 Javascript
鼠标经过出现气泡框的简单实例
2017/03/17 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
JavaScrpt判断一个数是否是质数的实例代码
2017/06/11 Javascript
Vue2路由动画效果的实现代码
2017/07/10 Javascript
JavaScript实现短信倒计时60s
2017/10/09 Javascript
微信小程序实现添加手机联系人功能示例
2017/11/30 Javascript
Bootstrap模态对话框中显示动态内容的方法
2018/08/10 Javascript
快速解决Vue项目在IE浏览器中显示空白的问题
2018/09/04 Javascript
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
JS如何实现动态添加的元素绑定事件
2019/11/12 Javascript
[00:34]拔城逐梦,热血永恒!2020(秋)完美世界城市挑战赛报名开启
2020/10/09 DOTA
详解python异步编程之asyncio(百万并发)
2018/07/07 Python
Python中一些深不见底的“坑”
2019/06/12 Python
Python函数的默认参数设计示例详解
2019/12/01 Python
python base64库给用户名或密码加密的流程
2020/01/02 Python
flask框架自定义url转换器操作详解
2020/01/25 Python
Monnier Freres中文官网:法国领先的奢侈品配饰在线零售商
2017/11/01 全球购物
戴森西班牙官网:Dyson西班牙
2020/02/04 全球购物
天逸系统(武汉)有限公司Java笔试题
2015/12/29 面试题
某个公司的Java笔面试题
2016/03/11 面试题
六十岁生日答谢词
2014/01/10 职场文书
八年级英语教学计划
2015/01/23 职场文书
暑期辅导班宣传单
2015/07/14 职场文书
盘点2020年适合农村地区创业的项目
2019/10/16 职场文书
vue3 自定义图片放大器效果的示例代码
2022/07/23 Vue.js