一.filter函数简介
filter函数主要用来筛选数据,过滤掉不符合条件的元素,并返回一个迭代器对象,如果要转换为列表list或者元祖tuple,可以使用内置函数list() 或者内置函数tuple()来转换;
filter函数接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中,就好比是用筛子,筛选指定的元素;
语法:
filter(function, iterable)
参数:
function – 函数名;
iterable – 序列或者可迭代对象;
返回值:通过function过滤后,将返回True的元素保存在迭代器对象中,最后返回这个迭代器对象(python2.0x版本是直接返回列表list);
二.filter函数使用
1.filter函数简单使用
# !usr/bin/env python # -*- coding:utf-8 _*- """ @Author:何以解忧 @Blog(个人博客地址): shuopython.com @WeChat Official Account(微信公众号):猿说python @Github:www.github.com @File:python_process_Pool.py @Time:2020/1/14 21:25 @Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累! """ def check(i): # 如果是偶数返回 True 否则返回False return True if i%2 == 0 else False if __name__ == "__main__": list1 =[1,2,3,4,5,6] result = filter(check,list1) print(result) print(type(result)) # 将返回的迭代器转为列表list或者元组 print(list(result)) print(type(list(result)))
输出结果:
<filter object at 0x0000015127BA7EB8>
<class 'filter'>
[2, 4, 6]
<class 'list'>
2.filter函数配合匿名函数Lambda使用
def check_score(score): if score > 60: return True else: return False if __name__ == "__main__": # 成绩列表 student_score = {"zhangsan":98,"lisi":58,"wangwu":67,"laowang":99,"xiaoxia":57} # 筛选成绩大于60的成绩列表 result = filter(lambda score:score > 60,student_score.values()) # 与上面一行代码等价 # result = filter(check_score, student_score.values()) print(result) print(type(result)) # 将返回的迭代器转为列表list或者元组 print(list(result)) print(type(list(result)))
输出结果:
<filter object at 0x000001B761F88FD0>
<class 'filter'>
[98, 67, 99]
<class 'list'>
注意:filter函数返回的是一个迭代器对象,往往在使用时需要先将其转换为列表list或者元祖tuple之后再操作;
python filter函数其实和内置函数map()使用方法类似,map()函数也是将迭代器或者序列中的每一个元素映射到指定的函数中,操作完成之后再返回修改后的迭代器对象;
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Python,filter,函数
更新动态
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]