简单介绍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中的私有属性
Aug 21 Python
Nginx搭建HTTPS服务器和强制使用HTTPS访问的方法
Aug 16 Python
Python获取系统所有进程PID及进程名称的方法示例
May 24 Python
Python 网络爬虫--关于简单的模拟登录实例讲解
Jun 01 Python
python画图把时间作为横坐标的方法
Jul 07 Python
Python利用WMI实现ping命令的例子
Aug 14 Python
Python FTP文件定时自动下载实现过程解析
Nov 12 Python
对Tensorflow中tensorboard日志的生成与显示详解
Feb 04 Python
pycharm如何实现跨目录调用文件
Feb 28 Python
Python实现Word表格转成Excel表格的示例代码
Apr 16 Python
Python使用多进程运行含有任意个参数的函数
May 02 Python
python数据分析之用sklearn预测糖尿病
Apr 22 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
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
2007/04/12 PHP
thinkPHP中volist标签用法示例
2016/12/06 PHP
JavaScript Tips 使用DocumentFragment加快DOM渲染速度
2010/06/28 Javascript
jquery弹出框的用法示例(2)
2013/08/26 Javascript
JavaScript通过字符串调用函数的实现方法
2015/03/18 Javascript
在JavaScript应用中实现延迟加载的方法
2015/06/25 Javascript
微信企业号开发之微信考勤Cookies的使用
2015/09/11 Javascript
JavaScript实现输入框(密码框)出现提示语
2016/01/12 Javascript
基于JQuery实现图片上传预览与删除操作
2016/05/24 Javascript
jQuery实现每隔几条元素增加1条线的方法
2016/06/27 Javascript
浅谈vue+webpack项目调试方法步骤
2017/09/11 Javascript
vue自定义移动端touch事件之点击、滑动、长按事件
2018/07/10 Javascript
在layui下对元素进行事件绑定的实例
2019/09/06 Javascript
javascript实现图片轮换动作方法
2020/08/07 Javascript
JavaScript十大取整方法实例教程
2020/12/03 Javascript
[01:07:13]TNC vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
[53:44]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第一场 1月31日
2021/03/11 DOTA
Python入门及进阶笔记 Python 内置函数小结
2014/08/09 Python
Java多线程编程中ThreadLocal类的用法及深入
2016/06/21 Python
Python中按键来获取指定的值
2019/03/02 Python
如何使用python传入不确定个数参数
2020/02/18 Python
Python数组拼接np.concatenate实现过程
2020/04/18 Python
python实现视频压缩功能
2020/12/18 Python
详解HTML5常用的语义化标签
2019/09/27 HTML / CSS
澳大利亚在线家具、灯饰和家居装饰店:LivingStyles
2018/11/20 全球购物
新闻专业应届生求职信
2013/10/31 职场文书
财务副总经理工作职责
2013/11/25 职场文书
个人授权委托书范本格式
2014/10/12 职场文书
2015年个人实习工作总结
2014/12/12 职场文书
2014年学校团委工作总结
2014/12/20 职场文书
护理专业自我评价
2015/03/11 职场文书
工程部岗位职责范本
2015/04/11 职场文书
导游词之韩国济州岛
2019/10/28 职场文书
Mysql MVCC机制原理详解
2021/04/20 MySQL
Go 通过结构struct实现接口interface的问题
2021/10/05 Golang
《地。-关于地球的运动-》单行本第七集上市,小说家朝井辽献上期待又害怕的推荐文
2022/03/31 日漫