filter函数的使用

filter函数:
  1. 循环帮你调用函数
  1. 帮你过滤你传入的参数,函数的结果返回的是true那就保存,返回false就不要,且返回的也是迭代器
 
备注:迭代器用完一个就扔掉一个,直到全部用完,且需要一个list接一下,否则返回的是对象
格式: filter(function, iterable)
          function -- 判断函数
          iterable -- 可迭代对象
#先写一个函数,作用是做True和False的判断
def judgment(a):
    return a%2 == 0 #要求可以给2整除,因为这种真假函数都比较小,所以很多地方会用lambda来写
oldlist = [1,2,3,4,5,6,7,8,9,10]
newlist = filter(judgment,oldlist)
print(list(newlist))    #用list承接filter的函数返回,并打印出新的符合条件的列表

#下面用lambda来简洁一下上面的程序,把oldlist也通过算法生成
print(list(filter(lambda a:a%2==0,range(1,11))))
上面代码输出结果为:
[2, 4, 6, 8, 10]
[2, 4, 6, 8, 10]
你看懂了吗?

猜你喜欢

转载自www.cnblogs.com/vigogogogo/p/12922885.html