- Python爬虫、数据分析与可视化:工具详解与案例实战
- 成立明 胡书敏 黄勇
- 320字
- 2021-03-31 12:07:45
2.5.2 filter方法与数据筛选
Filterfilter方法的作用是筛选序列中的数据,它的语法是filter(function,iterable)。
具体来讲,该方法的第1个参数是函数,用来设置过滤规则;第2个参数指定待操作的序列。在执行该方法时,会根据过滤规则过滤掉序列中不符合要求的元素。在下面的FilterDemo.py代码中将基于Python 3演示filter函数的用法。
01 def checkEvenNum(num): 02 return num % 2 == 0 03 newList=filter(checkEvenNum,[1,2,3,4]) 04 print(list(newList)) # [2, 4] 05 newList=filter(lambda x: x % 2 == 0,[1,2,3,4]) 06 print(list(newList)) # [2, 4]
在第1行和第2行里,我们定义了一个判断偶数的checkEvenNum方法。在第3行的filter方法里,第1个参数是checkEvenNum方法,第2个参数是一个数字序列,该filter方法会把根据checkEvenNum方法过滤后的结果返回给newList对象。在第4行使用时,同样需要转换成list类型。
在第5行里我们演示了第1个参数是lambda表达式的调用方法,效果也是过滤奇数。从这个案例中,我们能看到filter方法的“过滤”作用。