Python基础(reduce,filter,map函数)
map函数:
map函数特点:对可迭代对象中的每个元素进行相同的操作(例如每个元素+1等等)
#————————————————map函数————————————————————
#对列表的各个元素实现加一功能
li=[1,2,3]
#定义一个加一函数
def func1(x):
return x+1 #第一种map函数使用方式---lambda
res1=map(lambda x:x+1,li)
print(list(res1)) #第二种map函数使用方式---普通函数
res2=map(func1,li)
print(list(res2))
map函数两种实现方式
map扩展(将列表中的数字全部变成字符串):
print(list(map(str,[1,2,3,4,5,6])))
reduce函数:
reduce函数特点:从左到右对一个序列的项累计地应用有两个参数的函数,以此合并序列到一个单一值。(例如累加或累乘列表元素等等)
#————————————————reduce函数————————————————————
#python3在使用reduce函数时需要导入模块
from functools import reduce
nums=[1,2,3,4] #实现乘法的普通函数
def func2(x,y):
return x*y #第一种使用reduce函数的方式---lambda
res3=reduce(lambda x,y:x*y,nums)
print(res3) #第二种使用reduce函数的方式---普通函数
res4=reduce(func2,nums)
print(res4)
reduce函数
filter函数:
filter函数特点:对可迭代对象中的元素按照特定的条件进行筛选。(例如筛选列表中所有的偶数等等)
#————————————————filter函数————————————————————
lis=[0,1,2,3,4,5,6] #定义筛选偶数的普通函数一
def func3(x):
if x%2==0:
return x #定义筛选偶数的普通函数二
def func4(x):
return x%2==0 #第一种使用filter函数的方式---lambda
res5=filter(lambda x:x%2==0,lis)
print(list(res5)) #在使用两个普通函数时使用时会有一些差异,第一种return 0被当做返回False,因此列表中没有获取到0这个元素,第二种则不会有这种情况。 #第二种使用filter函数的方式---普通函数一
res6=filter(func3,lis)
print(list(res6)) #第二种使用filter函数的方式---普通函数二
res7=filter(func4,lis)
print(list(res7))
filter函数
*filter的底层实现原理:
def foo(x):
return x>5 def filter(func,iter):
lst=[]
for i in iter:
if func(i):
lst.append(i)
return lst ret=filter(foo,[1,2,3,4,5,6,7,8,9])
print(ret)
Python基础(reduce,filter,map函数)的更多相关文章
- python中reduce filter map lambda函数
lambda函数 python 使用 lambda 来创建匿名函数,lambda返回值是一个函数的地址,也就是函数对象. 语法:lambda [arg1 [,arg2,.....argn]]:expr ...
- 十五. Python基础(15)--内置函数-1
十五. Python基础(15)--内置函数-1 1 ● eval(), exec(), compile() 执行字符串数据类型的python代码 检测#import os 'import' in c ...
- 十六. Python基础(16)--内置函数-2
十六. Python基础(16)--内置函数-2 1 ● 内置函数format() Convert a value to a "formatted" representation. ...
- python用reduce和map把字符串转为数字的方法
python用reduce和map把字符串转为数字的方法 最近在复习高阶函数的时候,有一道题想了半天解不出来.于是上午搜索资料,看了下别人的解法,发现学习编程,思维真的很重要.下面这篇文章就来给大家介 ...
- Python基础灬高阶函数(lambda,filter,map,reduce,zip)
高阶函数 lambda函数 关键字lambda表示匿名函数,当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便. lambda函数省略函数名,冒号前为参数,冒号后函数体. # ...
- python的reduce,map,zip,filter和sorted函数
一. reduce(function,Iterable),它的形式和map()函数一样.不过参数function必须有两个参数. reduce()函数作用是:把结果继续和序列的下一个元素做累积计 ...
- python中lambda,map,reduce,filter,zip函数
函数式编程 函数式编程(Functional Programming)或者函数程序设计,又称泛函编程,是一种编程范型,它将计算机运算视为数学上的函数计算,并且避免使用程序状态以及易变对象.简单来讲,函 ...
- Python map/reduce/filter/sorted函数以及匿名函数
1. map() 函数的功能: map(f, [x1,x2,x3]) = [f(x1), f(x2), f(x3)] def f(x): return x*x a = map(f, [1, 2, 3, ...
- 十一、python沉淀之路--map函数、filter函数、reduce函数、匿名函数、内置函数
一.map函数 1.自定义函数,实现类似于map函数的功能 num_l = [1,3,4,5,6,9] def power(n): return n ** 2 def map_test(func,ar ...
- python3 匿名函数,map/reduce/filter等函数结合应用
匿名函数就是不需要显式的指定函数 # 平方函数 def func1(x): return x**2 print(func1) # 平方函数匿名函数写法 func2=lambda x:x**2 prin ...
随机推荐
- 有趣的toggleClass实现交替样式
addClass和removeClass进行样式类型的修改相信比较容易学习和接受 但是用这两个方法去实现交替样式,像一些<li>列表的样式,还有同类型数据的呈现, 当然很多框架都给出了封装 ...
- CSS float:right 在IE浏览器下换行
在换行的html标签内加如下样式 style="right: 0px; position: absolute;"
- stm.go
package) ].ModRevision } func,, ,, ].ModRevision ].Value) }
- 【BZOJ 2673】[Wf2011]Chips Challenge
题目大意: 传送门 $n*n$的棋盘,有一些位置可以放棋子,有一些已经放了棋子,有一些什么都没有,也不能放,要求放置以后满足:第i行和第i列的棋子数相同,同时每行的棋子数占总数比例小于$\frac{A ...
- 列表(list) ----python
Python 列表(List) 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型 ...
- SpringBoot(一)_快速实战搭建项目
现在在学习springboot 相关的知识,感觉真的很好用,用idea 进行开发,根据慕课网和纯洁的微笑的课程.进行总结下. 使用idea创建springboot项目 (1)单击 File | New ...
- Ubuntu命令用法详解——curl命令
简介: cURL(CommandLine Uniform Resource Locator)是一个利用URL语法在命令行下工作的文件传输工具,1997年首次发行.它支持文件上传和下载,所以是综合传输工 ...
- Asp.Net Core使用SignalR进行服务间调用
网上查询过很多关于ASP.NET core使用SignalR的简单例子,但是大部分都是简易聊天功能,今天心血来潮就搞了个使用SignalR进行服务间调用的简单DEMO. 至于SignalR是什么我就不 ...
- canvas实现画板
canvas实现画板 主要用到知识点: 鼠标事件onmousedown() onmousemove() onmouseup() onmouseleave() 事件委托 canvas的一些方法 如:绘制 ...
- HTML 练习清除浮动 :after
为 clearfix 类所在的 div 内部最后处添加一个 div 标签,内容为 . ,高度为0, 隐藏 <!DOCTYPE html> <html lang="en&qu ...