Python 一些好玩的函数

本文主要介绍Python的匿名函数和几个常用内建函数。匿名函数无需函数名,代码更精简但逻辑有限。还介绍了map()、reduce()、map/reduce组合及filter函数的功能和使用示例,如map对集合元素操作,reduce进行累加,filter过滤序列等。

一、匿名函数

什么匿名是函数:

  不需要使用def函数名的函数或者子程序

函数语法:

  lambda 参数:表达式

函数特点:

  1、lambda只是一个表达式,省去定义函数过程,让代码更精简

  2、lambda 在表达式中封装的逻辑有限

  3、不能访问自己参数序列外或者全局命名空间的参数

举例:

  

二、内建map()函数:

  map(函数, 集合);

  功能:map接收一个函数,然后作用于集合中的每一个元素,并把结果当做新的集合返回。

  注意:map必须有返回值。

  例如,把数组每个元素加1:

    

  由于map返回的是集合,所以需要转换成list输出值:

    

三、reduce()函数:

  reduce(函数,集合)

  功能:reduce接受一个函数,然后作用在集合上。首先对集合里的第一二个元素进行函数操作,再把得到的结果与第三个元素进行函数操作,直到最后一个元素。

  例如,对集合元素进行累加操作:

  

 

四、map/reduce 

  reduce(函数, map(函数, 集合))

  功能:map/reduce 是map和reduce函数的组合使用。先对集合进行map操作,返回另一个集合;再对集合进行reduce操作,返回一个结果。

  例如: 计算集合开平方后的和:

  

四、filter函数

  filter(函数,集合)

  filter 用来过滤序列,把集合的元素依次传入函数中,函数返回True则元素返回保留在集合中,否则元素不保留

   例如,去除集合中的偶数:

                                      

   用list输出:

  

   由于filter返回的是可迭代对象,在Anaconda中需要逐个输出,不能转成list输出。但是在pycharm中能够转换成list输出。

     

 

 

———————————————————————————————————————————————————————————

                                      如果有说的不对的,希望大家提出来,万分感谢。

  

 

转载于:https://www.cnblogs.com/MoonlightMaleGod/p/9545146.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值