Python中的filter()函数的用法


Posted in Python onApril 27, 2015

Python内建的filter()函数用于过滤序列。

和map()类似,filter()也接收一个函数和一个序列。和map()不同的时,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。

例如,在一个list中,删掉偶数,只保留奇数,可以这么写:

def is_odd(n):
  return n % 2 == 1

filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15])
# 结果: [1, 5, 9, 15]

把一个序列中的空字符串删掉,可以这么写:

def not_empty(s):
  return s and s.strip()

filter(not_empty, ['A', '', 'B', None, 'C', ' '])
# 结果: ['A', 'B', 'C']

可见用filter()这个高阶函数,关键在于正确实现一个“筛选”函数。
练习

请尝试用filter()删除1~100的素数。

Python 相关文章推荐
Python字符串替换实例分析
May 11 Python
Python中urllib+urllib2+cookielib模块编写爬虫实战
Jan 20 Python
Python批量修改文本文件内容的方法
Apr 29 Python
Python中取整的几种方法小结
Jan 06 Python
Python基于Matplotlib库简单绘制折线图的方法示例
Aug 14 Python
Python实现基本数据结构中栈的操作示例
Dec 04 Python
tensorflow 使用flags定义命令行参数的方法
Apr 23 Python
python画图的函数用法以及技巧
Jun 28 Python
Tensorflow tf.nn.depthwise_conv2d如何实现深度卷积的
Apr 20 Python
在Ubuntu 20.04中安装Pycharm 2020.1的图文教程
Apr 30 Python
Python下使用Trackbar实现绘图板
Oct 27 Python
如何用 Python 制作一个迷宫游戏
Feb 25 Python
Python中的map()函数和reduce()函数的用法
Apr 27 #Python
PyMongo安装使用笔记
Apr 27 #Python
Windows下PyMongo下载及安装教程
Apr 27 #Python
Python操作MongoDB数据库PyMongo库使用方法
Apr 27 #Python
Python的函数的一些高阶特性
Apr 27 #Python
Python简单进程锁代码实例
Apr 27 #Python
在Python中使用列表生成式的教程
Apr 27 #Python
You might like
如何开始收听短波广播
2021/03/01 无线电
与文件上传有关的php配置参数总结
2013/06/14 PHP
采用header定义为文件然后readfile下载(隐藏下载地址)
2014/01/31 PHP
php中Redis的应用--消息传递
2017/03/28 PHP
php7安装mongoDB扩展的方法分析
2017/08/02 PHP
Use Word to Search for Files
2007/06/15 Javascript
IE浏览器PNG图片透明效果代码
2008/09/02 Javascript
js/jquery去掉空格,回车,换行示例代码
2013/11/05 Javascript
js实现局部页面打印预览原理及示例代码
2014/07/03 Javascript
使用jquery prev()方法找到同级的前一个元素
2014/07/11 Javascript
js对象的复制继承实例
2015/01/10 Javascript
js实现按钮控制图片360度翻转特效的方法
2015/02/17 Javascript
nw.js实现类似微信的聊天软件
2015/03/16 Javascript
Angularjs---项目搭建图文教程
2016/07/08 Javascript
AngularJS 在同一个界面启动多个ng-app应用模块详解
2016/12/20 Javascript
jQuery扩展_动力节点Java学院整理
2017/07/05 jQuery
vue2.0 自定义 饼状图 (Echarts)组件的方法
2018/03/02 Javascript
使用Vue-cli 3.0搭建Vue项目的方法
2018/06/07 Javascript
js中的reduce()函数讲解
2019/01/18 Javascript
微信小程序开发实现消息推送
2020/11/18 Javascript
element-ui中el-upload多文件一次性上传的实现
2020/12/02 Javascript
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
简介Python中用于处理字符串的center()方法
2015/05/18 Python
Linux下python与C++使用dlib实现人脸检测
2018/06/29 Python
python网络爬虫 Scrapy中selenium用法详解
2019/09/28 Python
python 读取、写入txt文件的示例
2020/09/27 Python
html5使用canvas实现跟随光标跳动的火焰效果
2014/01/07 HTML / CSS
NIHAOMARKET官方海外旗舰店:意大利你好华人超市
2018/01/27 全球购物
美国便宜的横幅和标志印刷在线:Best of Signs
2019/05/29 全球购物
德国、奥地利和瑞士最大的旅行和度假门户网站:HolidayCheck
2019/11/14 全球购物
跟单文员的岗位职责
2013/11/14 职场文书
《小松树和大松树》教学反思
2014/02/20 职场文书
教师党员整改措施
2014/10/24 职场文书
合同权益转让协议书模板
2014/11/18 职场文书
工作表扬信
2015/01/17 职场文书
画展邀请函
2015/01/31 职场文书