• python 函数“四剑客”的使用和介绍


    python函数四剑客:lambda、map、filter和reduce。

    一、lambda(匿名函数)

      1.  学习lambda要注意一下几点:

    • lambda语句被用来创建新的函数对象,并且在运行的时候返回他们;
    • python使用lambda关键字来创建匿名函数,这种函数的命名省去了def声明函数的标准步骤;
    • lambda只是一个表达式,函数体比def简单的多;
    • lambda的主体是一个表达式,而不是一个代码块,只能用有限的逻辑封装进来;
    • 像if、for、while等语句不能用于lambda中;
    • lambda函数不能共享给其他的函数调用,而def却可以;
    • lambda拥有自己的名字空间,且不能访问自由参数列表之外全局名字空间里的参数;

      2.  语法结构:  lambda [arg1 [,arg2,.....argn]]:expression

      3.     例子:用lambda实现两个元素相加或拼接,如下:

         

         上述例子同样可以用函数来实现,具体实现方法如下:

         

    二、map函数

      1.  map函数使用方法:将每个字符串或者列表元素,应用某一个函数方法,返回结果列表;当seq只有一个时,将函数func作用于这个seq的每个元素上,并得到一新的seq。 

      2.  语法结构:map(function, sequence[, sequence, ...]) -> list

      3.  应用举例:单一seq

         

      4.  应用举例二:求两个数的和或拼接的结果

        

        

       5.  应用举例三:map不会处理长度不一致或类型不一致的seq

        

        

    三、filter函数

      1.  使用方法:该函数可以对序列做过滤,就是说可以使用一个自定义的函数过滤一个序列,把序列的每一项传到自定义的过滤函数里处理,并返回结果过滤,最终返回过滤的结果。

      2.  语法结构:filter(function or None, sequence) -> list, tuple, or string

      3.  应用举例:

         

    四、reduce函数

      1.  使用方法:reduce内建函数是一个二元操作函数,他用来将一个数据集合(链表,元组等)中的所有数据进行下列操作:用传给reduce中的函数 func()(必须是一
    个二元操作函数)先对集合中的第1,2个数据进行操作,得到的结果再与第三个数据用func()函数运算,最后得到一个结果。

      2.  语法结构:reduce(function, sequence[, initial]) -> value

      3.  应用举例:

         

      4.  应用举例二:实现1-100的所有数之和

        

         

        

    
    
  • 相关阅读:
    Java实现 蓝桥杯VIP 算法训练 字符删除
    Java实现 蓝桥杯VIP 算法训练 字符删除
    Java实现 蓝桥杯VIP 算法训练 字符删除
    Java实现 蓝桥杯VIP 算法训练 字符删除
    Java实现 蓝桥杯VIP 算法训练 字符删除
    Java实现 蓝桥杯VIP 算法训练 字符串编辑
    Java实现 蓝桥杯VIP 算法训练 字符串编辑
    Java实现 蓝桥杯VIP 算法训练 字符串编辑
    Java实现 蓝桥杯VIP 算法训练 字符串编辑
    Java实现 蓝桥杯VIP 算法训练 字符串编辑
  • 原文地址:https://www.cnblogs.com/ddpeng/p/8014602.html
Copyright © 2020-2023  润新知