python学习9--lambda,map,filter,递归

1.lambda关键字,创建匿名函数
  lambda x1,x2...xn:返回语句;lamnda 参数 :返回值
  使用:g=lambda。。。。;g(形参)
  例:
2.作用:
  (1)省下定义函数的过程,比如简单写一个脚本来管理服务器的时间,不需要再定义函数并调用,简化代码;
  (2)对于比较抽象切调用次数较少的函数可以直接省去起名的麻烦;
  (3)简化代码的可读性,直接进行函数体的读。
3.filter
  过滤器。filter(function,iterable);筛选iterable
  中在function的条件下,结果为True的元素。
  (1)function为None
  list(filter(None,[1,0,False,True])),返回列表[1,True]
  (2)function不为None
  def odd(x):
    return x%2
  temp=range(10)
  show=filter(odd,temp)
  list(show)
  返回结果:[1,3,5,7,9]
  改造:
  list(filter(lambda x:x%2,range(10)))
4.map
  映射。map(function,iterable),将interable中每个元素按照function进行加工,返回序列。
  例:list(map(lambda x:x*2,range(10))),返回[0,2,4,6,8,10,12,14,16,18]

5.递归

条件:
  一个返回条件,一个调用自身过程。
实际
  因为递归需要的量的时间和空间,所以对于重复量比较大的工作,最好使用非递归完成。

原文地址:https://www.cnblogs.com/zjh225901/p/6168873.html