-
关键词:filter() 、map() 函数
-
摘要:filter() 函数、map() 函数、filter() 函数的使用方法、map() 函数的使用方法、过滤函数、筛选函数
1、filter() 函数
filter() 函数用于过滤出一堆数据中符合条件的数据,其用法为:
filter(function, iterable)
- function表示在进行判断前,对数据集中每个数据的操作
- iterable表示待判断的数据集
- filter() 函数将使用 function 函数对 iterable 中的每个元素进行操作,并以列表形式返回操作结果为 True 的元素
- filter() 函数返回值为可操作对象,用 list() 对其返回值进行列表化,可得到一个可视的列表
*在filter函数中使用function函数时,function不加括号,且其操作对象是数据集中的单个元素
##利用 filter() 函数删除空字符串
>>> list1 = ["A", "B", "C", " ", "D"]
>>> def judge(strX):
if strX == " ":
return 0
else:
return 1
>>> list(filter(judge, list1))
["A", "B", "C", "D"]
##结合lambda表达式,实现一个偶数过滤器
>>> list1 = [0, 1, 2, 3, 4, 5]
>>> list(filter((lambda x : x % 2), list1))
[1, 3, 5]
2、map() 函数
map() 函数与 filter() 函数用法基本一致,只是 map() 函数在最后不做判断与筛选。
map() 函数用作对数据集中的每个对象执行某操作,并返回一个新的列表。
##结合lambda表达式,将列表数据乘以2
>>> list1 = [0, 1, 2, 3, 4, 5]
>>> list(map((lambda x : x % 2), list1))
[0, 2, 4, 6, 8, 10]