简单介绍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处理python编码问题
Mar 13 Python
使用Python构建Hopfield网络的教程
Apr 14 Python
Python中正则表达式的详细教程
Apr 30 Python
python更新列表的方法
Jul 28 Python
Python基于回溯法子集树模板实现8皇后问题
Sep 01 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
Dec 02 Python
Python基于mysql实现学生管理系统
Feb 21 Python
解决Python正则表达式匹配反斜杠''\''问题
Jul 17 Python
浅析Python语言自带的数据结构有哪些
Aug 27 Python
在keras下实现多个模型的融合方式
May 23 Python
python二维图制作的实例代码
Dec 03 Python
一篇文章搞懂python混乱的切换操作与优雅的推导式
Aug 23 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数据库操作方法(MYSQL版)
2011/06/08 PHP
114啦源码(114la)不能生成地方房产和地方报刊问题4级页面0字节的解决方法
2012/01/12 PHP
PHP中mysqli_affected_rows作用行数返回值分析
2014/12/26 PHP
PHP手机短信验证码实现流程详解
2018/05/17 PHP
ThinkPHP5.1+Ajax实现的无刷新分页功能示例
2020/02/10 PHP
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
javascript网页关闭时提醒效果脚本
2008/10/22 Javascript
window.location和document.location的区别分析
2008/12/23 Javascript
Google Map Api和GOOGLE Search Api整合实现代码
2009/07/18 Javascript
ASP.NET jQuery 实例2 (表单中使用回车在TextBox之间向下移动)
2012/01/13 Javascript
浅析ajax请求json数据并用js解析(示例分析)
2013/07/13 Javascript
javascript中Object使用详解
2015/01/26 Javascript
jQuery插件animateSlide制作多点滑动幻灯片
2015/06/11 Javascript
举例讲解Node.js中的Writable对象
2015/07/29 Javascript
jquery动态切换背景图片的简单实现方法
2016/05/14 Javascript
jsp 网站引入外部css或者js失效问题解决
2016/10/31 Javascript
浅谈jQuery this和$(this)的区别及获取$(this)子元素对象的方法
2016/11/29 Javascript
解读ES6中class关键字
2017/11/20 Javascript
关于vue面试题汇总
2018/03/20 Javascript
javascript中函数的写法实例代码详解
2018/10/28 Javascript
举例讲解Python设计模式编程中对抽象工厂模式的运用
2016/03/02 Python
使用Python生成XML的方法实例
2017/03/21 Python
Python实现上下班抢个顺风单脚本
2018/02/07 Python
python多维数组切片方法
2018/04/13 Python
Falsk 与 Django 过滤器的使用与区别详解
2019/06/04 Python
美国知名女性服饰品牌:New York & Company
2017/03/23 全球购物
佳能法国商店:Canon法国
2019/02/14 全球购物
英国最好的温室之家:Greenhouses Direct
2019/07/13 全球购物
用C语言实现文件读写操作
2013/10/27 面试题
优秀教师感人事迹材料
2014/05/04 职场文书
社区平安建设汇报材料
2014/08/14 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
结婚保证书(三从四德)
2015/02/26 职场文书
MySQL中in和exists区别详解
2021/06/03 MySQL
浅谈MySQL函数
2021/10/05 MySQL
MySQL数据库简介与基本操作
2022/05/30 MySQL