介绍

Python内置的filter()函数能够从可迭代对象(如字典、列表)中筛选某些元素,并生成一个新的迭代器。可迭代对象是一个可以被“遍历”的Python对象,也就是说,它将按顺序返回各元素,这样我们就可以在for循环中使用它。

filter()函数的基本语法是:

filter(function, iterable)

返回一个可迭代的filter对象,可以使用list()函数将其转化为列表,这个列表包含过滤器对象中返回的所有的项。

filter()函数所提供的过滤方法,通常比用列表解析更有效,特别是当我们处理更大的数据集时。例如,列表解析会生成一个新列表,这会增加该处理的运行时间。当列表解析执行完毕它的表达式后,内存中会有两个列表。但是,filter()将生成一个简单的对象,该对象包含对原始列表的引用、提供的函数以及原始列表中位置的索引,这样操作占用的内存更少。

下面介绍filter()的四种不同用法:

filter()中使用特殊函数

filter()的第一个参数是一个函数,用它来决定第二个参数所引用的可迭代对象中的每一项的去留。此函数被调用后,当返回False时,第二个参数中的可迭代对象里面相应的值就会被删除。针对这个函数,可以是一个普通函数,也可以使用lambda函数,特别是当表达式不那么复杂的时候。

下面是filter()中使用l

如何使用Python的filter函数相关推荐

  1. python的filter函数

    Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是 ...

  2. python中filter函数的用法

    描述 filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换. 该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为 ...

  3. python 的filter()函数

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

  4. python query.filter函数_filter筛选函数_【曾贤志】用Python处理Excel数据 - 第1季 基础篇_Excel视频-51CTO学院...

    ---------------------------------------------------------------- 学完本课程可继续巩固篇:https://edu.51cto.com/c ...

  5. 【python】filter()函数

    filter(func, seq) 该函数的目的是提取出seq中能使func为true的元素序列.func函数是一个布尔函数,filter()函数调用这个函数一次作用于seq中的每一个元素,筛选出符合 ...

  6. python中filter函数的使用

    利用filter()筛选出1~1000的回数,回数是指从左向右读和从右向左读都是一样的数,例如12321,909. 思路:利用切片 def is_palindrome(n):return str(n) ...

  7. python filter函数_python基础——filter函数

    python基础--filter函数 Python内建的filter()函数用于过滤序列. 和map()类似,filter()也接收一个函数和一个序列.和map()不同的是,filter()把传入的函 ...

  8. 在python中filter是什么意思_python中的filter函数功能是什么?

    在python中,面对众多的数据,我们要过滤筛选出我们需要的数据.python中的filter函数就是起到了过滤筛选的作用.filter函数可以筛选一个筛选函数和一个序列,将筛选函数依次作用于每一个筛 ...

  9. Python进阶09 filter函数

    2019独角兽企业重金招聘Python工程师标准>>> def func(a):if a > 100:return Trueelse:return False'''filter ...

最新文章

  1. JVM(2)之 JAVA堆
  2. ActionScript接收socket服务器发送来的数据
  3. php简单实用的操作文件工具类(创建、移动、复制、删除)
  4. 45-机器设计问题(深搜)
  5. Uva 11400,照明系统设计
  6. Java集合系列---TreeMap源码解析(巨好懂!!!)
  7. 一个女人如何让自已越来越厉害
  8. windows tcp ping 端口工具及使用方法
  9. bulkwrite 批量插入_使用EF扩展EntityFramework.BulkInsert实现批量插入
  10. 推荐几个浏览器插件帮助你查论文显示期刊等级(分区及影响因子),sci文章便捷下载
  11. 专科低学历想做web前端开发拿10k、15k高薪,我建议你这样做
  12. Java从遗忘到入门——Day06
  13. OBLOG4.0+DVBBS7.10 SP1整合
  14. 基岩版刷铁傀儡机制和Java_我的世界:刷铁机没有傀儡只刷猫?作为基岩版玩家,你的痛我都懂...
  15. 1离线TiDB-Ansible 部署问题-总结
  16. CAD中怎么绘制攒尖屋顶?CAD设计攒尖屋顶技巧
  17. HBuilderX安装使用教程
  18. 【实战项目i护理上篇】vue-cli3+vue-admin+egg
  19. MyBase - 一个极简的数据库
  20. 基于Linux的智能家居的设计(2)

热门文章

  1. vue+elementui 手机号正则验证
  2. python 人脸识别
  3. 浅谈Charles抓取HTTPS原理及HTTP CONNECT
  4. [机器学习]试试Kaggle大牛们常用的方法——对抗验证
  5. python setattr/getattr
  6. myeclise CI 2018 9破解方法
  7. 子类的构造函数和析构函数
  8. oracle数据库适配器错误,Oracle协议适配器错误解决方法
  9. 学生成绩管理系统C语言课程设计
  10. HDMI,VGA,DVI,DP,MINI DP,AV等影音设备接口规参数