python 内置函数filter


Posted in Python onJune 01, 2017

python 内置函数filter

class filter(object):
 """
 filter(function or None, iterable) --> filter object
 
 Return an iterator yielding those items of iterable for which function(item)
 is true. If function is None, return the items that are true.
 """

filter(func,iterator)

    func:自定义或匿名函数中所得值是布尔值,true将保留函数所取到的值,false则取反。
    iterator:可迭代对象。

例:

     过滤列表['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']
     只要含有text字符串及将其取出 or 取反。

s.rfind'text'+1

     Python3中 rfind() 返回字符串最后一次出现的位置,如果没有匹配项则返回-1。
     数字中0是false,0以上的整数都是true,所以s.rfind'text'后会有+1,没找到字符及-1+1=0.

# Filter

li = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']

# 默认保留函数所取到的值
print(list(filter(lambda s: s.rfind('text') + 1, li)))
# 取反,下三个例子是一样的
print(list(filter(lambda s: not s.rfind('text') + 1, li)))

# Noe 自定义函数

l1 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']


def distinguish(l):
 nl = []
 for s in l:
  if s.rfind("text") + 1:
   nl.append(s)
 return nl


print(distinguish(l1))

# Two 自定义高阶函数

l2 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']


def f(s):
 return s.rfind('text') + 1


def distinguish(func, array):
 nl = []
 for s in array:
  if func(s):
   nl.append(s)
 return nl


print(distinguish(f, l2))

# Three 匿名函数

l3 = ['text_test_text', 'test_text_1', 'text_test_2', '3_test_text', 'test_test']


def distinguish(func, array):
 nl = []
 for s in array:
  if func(s):
   nl.append(s)
 return nl

print(distinguish(lambda s: s.rfind('text') + 1, l3))

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Python 相关文章推荐
python备份文件以及mysql数据库的脚本代码
Jun 10 Python
Python编程中使用Pillow来处理图像的基础教程
Nov 20 Python
Python设计足球联赛赛程表程序的思路与简单实现示例
Jun 28 Python
Python自动化运维_文件内容差异对比分析
Dec 13 Python
Windows下python3.6.4安装教程
Jul 31 Python
解决Python一行输出不显示的问题
Dec 03 Python
Python之pymysql的使用小结
Jul 01 Python
pytorch 共享参数的示例
Aug 17 Python
django 解决model中类写不到数据库中,数据库无此字段的问题
May 20 Python
Python之Matplotlib文字与注释的使用方法
Jun 18 Python
新手常见Python错误及异常解决处理方案
Jun 18 Python
python UIAutomator2使用超详细教程
Feb 19 Python
python读取二进制mnist实例详解
May 31 #Python
Python算术运算符实例详解
May 31 #Python
Python简单的制作图片验证码实例
May 31 #Python
详解python的webrtc库实现语音端点检测
May 31 #Python
python实现决策树C4.5算法详解(在ID3基础上改进)
May 31 #Python
基于ID3决策树算法的实现(Python版)
May 31 #Python
Python基础知识_浅谈用户交互
May 31 #Python
You might like
一个可以删除字符串中HTML标记的PHP函数
2006/10/09 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
2017/10/26 PHP
thinkPHP通用控制器实现方法示例
2017/11/23 PHP
JQery 渐变图片导航效果代码 漂亮
2010/01/01 Javascript
jquery弹出框的用法示例(一)
2013/08/26 Javascript
浏览器页面区域大小的js获取方法
2013/09/21 Javascript
javascript转换静态图片,增加粒子动画效果
2015/05/28 Javascript
利用AngularJs实现京东首页轮播图效果
2016/09/08 Javascript
JS字符串统计操作示例【遍历,截取,输出,计算】
2017/03/27 Javascript
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
2017/07/18 Javascript
如何编写一个d.ts文件的步骤详解
2018/04/13 Javascript
javascript实现的时间格式加8小时功能示例
2019/06/13 Javascript
layui-table获得当前行的上/下一行数据的例子
2019/09/24 Javascript
使用Python压缩和解压缩zip文件的教程
2015/05/06 Python
Python实现将HTML转换成doc格式文件的方法示例
2017/11/20 Python
详解PyTorch批训练及优化器比较
2018/04/28 Python
对Python中list的倒序索引和切片实例讲解
2018/11/15 Python
NumPy 数组使用大全
2019/04/25 Python
Python通过递归获取目录下指定文件代码实例
2019/11/07 Python
python调用私有属性的方法总结
2020/07/24 Python
详解canvas绘制多张图的排列顺序问题
2019/01/21 HTML / CSS
Grow Gorgeous美国官网:只要八天,体验唤醒毛囊后新生的茂密秀发
2018/06/04 全球购物
师范生个人推荐信
2013/11/29 职场文书
春季防火方案
2014/05/10 职场文书
求职简历自荐信
2014/06/18 职场文书
世界卫生日宣传活动总结
2015/02/09 职场文书
2015世界地球日活动总结
2015/02/09 职场文书
2015年八一建军节慰问信
2015/03/23 职场文书
2015年党风廉政建设工作总结
2015/04/09 职场文书
放假通知格式
2015/04/14 职场文书
硕士毕业答辩开场白
2015/05/27 职场文书
政审证明范文
2015/06/19 职场文书
党员身份证明材料
2015/06/19 职场文书
小学总务工作总结
2015/08/13 职场文书
winserver2019安装软件一直卡在应用程序正在为首次使用做准备
2022/06/10 Servers