python题目-----lambda函数

来源:互联网 发布:淘宝全球购关税怎么交 编辑:程序博客网 时间:2024/06/06 03:22

     lambda函数是一个可以接受任意多个参数,函数体为单表达式的函数,但是要注意参数不能是命令。

 1  使用lambda函数主要优势在于:

     1)适合于低频调用,且即用即销毁场景;

     2)不用定义函数名字,可以作为匿名函数使用(如给filter,map等使用);

     3)也可以作为回掉函数使用(如传递给某些应用做消息处理);


   2   lambda函数调用方式:

       方式一:

                   f = lambda x:x * 2

                   f(1)

      方式二:

                   lambda x:x*2(1)


  3 lambda函数用例

   1)map函数

         如实现对list每个元素加一操作,

          map(lambda x:x+1, [1,2,3,4])

          map(lambda x:x+1,  [y*2 for y in range(5)])

    2)函数选择

      bool = 1 或者0 选择不同函数,字符串拼接或者原样

      s = "it is     a\n\tbag"

      def func(bool,s):

                  bool and (lambda s: " ".join(s.split())) or (lambda: s:s)

       

      解释:1)s串是一个多行字符串,\n实现了通常由三重引号做的事情

                  2)split函数不带参数按照空白分割;按照空白分割\n,\t,多个空格都视为空白

                  3)“ “.join(str)函数实现字符合并为单个空格分隔

       





     

0 0
原创粉丝点击