map和filter是python里面比较重要的BIF,map的主要作用就是对集合里面的每一个元素进行处理,filter的作用就是过滤集合,具体功能如下
1 t =lambda x:x%2 2 list(filter(t, range(10))) 3 [1, 3, 5, 7, 9] 4 list(map(t,range(10))) 5 [0, 1, 0, 1, 0, 1, 0, 1, 0, 1]
filter过滤出了0到9所有的奇数,因为filter的功能是过滤掉经过函数处理的返回值为0,false的元素,所以取余唯1的被留下来了,map的功能是将元素进行函数处理,也就是说返回的是处理后的数据。