Python:map函数用法详解一个简单的例子:将一个list中所有元素平方,常规的做法如下图所示,虽然实现python高阶函数特点了这个功能,但并没有给人一目python高阶函数特点了然的感觉 。若换成map来实现,则会好很多 。
1、map函数介绍及其简单使用
上述用一个简单的例子演示的map函数的用法及其优势,下面将详细介绍map函数的用法:map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每一个元素 , 并把结果作为新的Iterable返回 。其语法格式为:
map(function,iterable...)
function---函数名
iterable---一个或多个序列
map作为高阶函数,事实上它把运算规则抽象了,我们可以用这种方式计算任意复杂的函数,再比如,把一个list的所有数据转为string类型:
再举一个小例子,对list中的各个元素开方,一步到位:
!注意:在使用math自带函数时,只需要函数名即可
2、map函数与lambda函数结合使用 , 下面方法同样可以达到对list中的数二次方的目的
map函数与lambda函数结合使用 , 可以传入两个参数相加:
还可以同时计算多个值:
Python 之内置函数:filter、map、reduce、zip、enumerate这几个函数在 Python 里面被称为高阶函数 , 本文主要学习它们的用法 。
filter 函数原型如下:
第一个参数是判断函数(返回结果需要是 True 或者 False) , 第二个为序列,该函数将对iterable序列依次执行function(item)操作,返回结果是过滤之后结果组成的序列 。
简单记忆:对序列中的元素进行筛?。袢》咸跫男蛄?。
返回结果为:,使用list函数可以输入序列内容 。
map 函数原型如下:
该函数运行之后生成一个 list,第一个参数是函数、第二个参数是一个或多个序列;
下述代码是一个简单的测试案例:
上述代码运行完毕,得到的结果是:。使用print(list(my_new_list))可以得到结果 。
map函数的第一个参数,可以有多个参数 , 当这种情况出现后,后面的第二个参数需要是多个序列 。
map 函数解决的问题:
reduce 函数原型如下:
第一个参数是函数,第二个参数是序列,返回计算结果之后的值 。该函数价值在于滚动计算应用于列表中的连续值 。
测试代码如下:
最终的结果是 6,如果设置第三个参数为 4,可以运行代码查看结果,最后得到的结论是,第三个参数表示初始值 , 即累加操作初始的数值 。
简单记忆:对序列内所有元素进行累计操作 。
zip 函数原型如下:
zip函数将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表 。
如果各个迭代器的元素个数不一样,则返回列表长度与最短的对象相同,利用星号(*)操作符,可以将元组解压为列表 。
测试代码如下:
展示如何利用*操作符:
输出结果如下:
简单记忆:zip 的功能是映射多个容器的相似索引 , 可以方便用于来构造字典 。
enumerate 函数原型如下:
参数说明:
该函数用于将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标 , 一般用在for循环当中 。
测试代码如下:
返回结果为:。
本文涉及的函数可以与 lambda 表达式进行结合,能大幅度提高编码效率 。最好的学习资料永远是官方手册
python高阶函数有哪些1、map
map()函数接受两个参数python高阶函数特点 , 一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每一个元素上 , 并把结果作为新的Iterator返回 。
推荐阅读
- 如何抓住社群营销,做好社群营销关键点有哪些方面?
- 明星为什么都开始直播带货,为什么很多明星都去直播带货
- erp管理系统全称叫啥名字,erp系统的管理
- 非回合类角色扮演游戏,非回合类角色扮演游戏推荐
- go语言支持的操作系统 go语言支持的操作系统包括
- java中男女下拉框代码,java中下拉列表怎么写
- 如何写新产品推广方案,新产品推广流程图
- 手游版奥特格斗游戏,奥特曼格斗游戏手游
- mysql锁行怎么实现 mysql如何锁住一行数据