python 高阶函数定义(python高阶函数详解)
Python高阶函数1。map function map function,它接收两个参数,第一个参数是函数对象(当然也可以是lambda表达式),第二个参数是序列。
它能实现什么样的功能?我举个例子让你明白。
Map (lambda x: x * 2,[1,2,3,4,5]) [2,4,6,8,10]可以清晰的看到。它可以将以下序列中的每个元素作为参数,并将其传递给lambda。
当我们不不要使用map函数,你可以这样写。
我的列表=[] for I in [1,2,3,4,5]:我的列表。追加(I * 2) 2。过滤函数过滤函数,类似于贴图函数。它还接收两个参数,一个lambda表达式和一个序列。它将遍历以下序列中的每个元素,并将其作为参数传递给lambda表达式。当表达式返回True时,该元素将被保留,当表达式返回False时,该元素将被丢弃。
下面的例子将过滤掉列表中小于0的元素。
filter(lambda x:x ^ 0,range (-5,5)) [-5,-4,-3,-2,-1] 3。reduce function Reduce function,类似。它的作用是先对序列中的1、2号元素进行运算,然后将得到的结果与第三个数据用lambda函数进行运算,再将得到的结果与第四个元素进行运算,以此类推,直到不再有元素为止。
这里这是一个例子,你我会明白的。
Reduce (lambda x,y: x y,[1,2,3,4,5]) 15其运算过程分解如下。
1=33 3=66 4=1010 5=154.注意上面的函数,熟练掌握它们的写法,可以在一定程度上让我们的代码看起来更Pythonic化,更简洁。
如果你是新手,需要注意上面的例子都是在Python2.x环境下演示的。然而,在Python3.x中,情况有所不同。你可以自己试试。
这里总结如下:
首先,map和filter函数返回迭代器对象,而不是列表。以地图为例。
Map _ obj=集合中的map (lambda x: x * 2,[1,2,3,4,5])。ABC import iterator is instance(map _ obj,iterator)true next(map _ obj)2 list(map _ obj)[4,6,8,11
从functools导入减少审计福冈江
推荐阅读
- 如果太阳系只有太阳和地球会怎么样(如果太阳系的行星只有地球会怎么样)
- 魅族M8手机(魅族m8软件)
- 夏利2015款多少钱1.0排量的,夏利1.0价格和配置
- 2008欧洲杯进球集锦,2008欧洲杯官方回顾
- 康佳电视机遥控器下载(康佳电视机遥控器)
- 帝威汽车的介绍,帝威怎么样内饰油耗最新价格
- 东京奥运会赛程时间表,东京奥运会赛程时间表几天
- 适马18200和腾龙18200(适马18200)
- 纳米科技在我们生活中有什么作用(纳米科技在我们生活中有什么用途)
- 奔腾b70价格和配置参数,奔腾B70价格和配置
- 东京奥运会女子链球成绩,东京奥运会女子链球有多重
- 酷派5010和8050那个好(酷派5010)
- 华为正在推进5.5G技术(华为汪涛做好准备_5.5G共筑未来之基)
- 康佳A3手机(康佳a3)
- 2014世界杯阿根廷,2014世界杯阿根廷德国
- 领驭2.0价格和配置图片,领驭2.0价格和配置
- 聚类分析的简单案例有哪些(聚类分析的简单案例)
- 便宜的油烟机能用吗(便宜的油烟机)
- 雨润总裁毕国祥女儿毕习习怎么死的,毕习习资料背景照片