python基础===map, reduce, filter的用法
filter的用法:
这还是一个操作表list的内嵌函数
'filter' 需要一个函数与一个list
它用这个函数来决定哪个项应该被放入过滤结果队列中
遍历list中的每一个值,输入到这个函数中
如果这个函数返回True, 那么值就放到过滤结果队列中去
如果这个函数返回 False,那么这个值就会被跳过
#过滤出列表中的4位数元素 def _Filter(x):
return len(str(x))==4 l=[234,343432,34343,2343,234454,6756,76778,8779] new_l = list(filter(_Filter, l)) print(new_l)
#过滤出列表中的所有奇数 def _Filter(x):
return x %2 != 0 l=[234,343432,34343,2343,234454,6756,76778,8779] new_l = list(filter(_Filter, l)) print(new_l)
操作 list的内嵌函数
'reduce' 需要一个函数与一个list作为参数
它把该list最终压缩成一个值
函数必须有两个参数作为输入,返回一个值作为输出
‘reduce’ 首先对这个list的头两个元素应用这个函数
然后是对返回值以及list的下一个元素继续应用该函数
以此类推,直到整个list中的值都被遍历到
from functools import reduce def sum(x, y): return x+y r = list(range(10))
result = reduce(sum, r)
print(result)
一个操作表list的内嵌函数
'map'需要一个函数与一个list作为参数
这个函数限定为只有一个参数输入一个返回输出
这个函数要依次作用到这个list上的每一个元素
结果作为一个表list返回
from functools import reduce def _map(x): return str(x)+"-map" r = list(range(10))
result = map(_map, r)
print(list(result)) >>>['0-map', '1-map', '2-map', '3-map', '4-map', '5-map', '6-map', '7-map', '8-map', '9-map'
python基础===map, reduce, filter的用法的更多相关文章
- Python基础-map/reduce/filter
一.map Python内置函数,用法及说明如下: class map(object): """ map(func, *iterables) --> map obj ...
- python基础——map/reduce
python基础——map/reduce Python内建了map()和reduce()函数. 如果你读过Google的那篇大名鼎鼎的论文“MapReduce: Simplified Data Pro ...
- Demo of Python "Map Reduce Filter"
Here I share with you a demo for python map, reduce and filter functional programming thatowned by m ...
- Python: lambda, map, reduce, filter
在学习python的过程中,lambda的语法时常会使人感到困惑,lambda是什么,为什么要使用lambda,是不是必须使用lambda? 下面就上面的问题进行一下解答. 1.lambda是什么? ...
- python基础===map和zip的用法
>>> list1=[1,45,232,45,666,64] >>> list2=["ss","kein","to ...
- [python基础知识]python内置函数map/reduce/filter
python内置函数map/reduce/filter 这三个函数用的顺手了,很cool. filter()函数:filter函数相当于过滤,调用一个bool_func(只返回bool类型数据的方法) ...
- 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、lambda函数 转
python之map.filter.reduce.lambda函数 转 http://www.cnblogs.com/kaituorensheng/p/5300340.html 阅读目录 map ...
- Python学习:函数式编程(lambda, map() ,reduce() ,filter())
1. lambda: Python 支持用lambda对简单的功能定义“行内函数” 2.map() : 3.reduce() : 4.filter() : map() ,reduce() , filt ...
随机推荐
- 对Spark2.2.0文档的学习3-Spark Programming Guide
Spark Programming Guide Link:http://spark.apache.org/docs/2.2.0/rdd-programming-guide.html 每个Spark A ...
- 51nod 1574 排列转换(贪心+鸽巢原理)
题意:有两个长度为n的排列p和s.要求通过交换使得p变成s.交换 pi 和 pj 的代价是|i-j|.要求使用最少的代价让p变成s. 考虑两个数字pi和pj,假如交换他们能使得pi到目标的距离减少,p ...
- floyd最短路
floyd可以在O(n^3)的时间复杂度,O(n^2)的空间复杂度下求解正权图中任意两点间的最短路长度. 本质是动态规划. 定义f[k][i][j]表示从i出发,途中只允许经过编号小于等于k的点时的最 ...
- presence_of_element_located与visibility_of_element_located区别
selenium 问题:加了显性等待后,操作元素依然出错 背景: 用WebDriverWait时,一开始用的是presence_of_element_located,我对它的想法就是他就是用来等待 ...
- 【三】shiro入门 之 Realm
Realm:域,Shiro 从从Realm获取安全数据(如用户.角色.权限),就是说SecurityManager要验证用户身份,那么它需要从Realm获取相应的用户进行比较以确定用户身份是否合法:也 ...
- CF530D sum in the tree
我是题面.原题地址 很简单的一道贪心题 首先,先想想怎么判断是否合法 题目中说,a是自然数,那么子节点的s明显是不能比父节点大的,如果比父节点大,不合法! 所有深度为偶数的点的s被删除了,也只有深度为 ...
- Day22-CSRF跨站请求伪造
csrf 跨站请求伪造 一.简介 django为用户实现防止跨站请求伪造的功能,通过中间件 django.middleware.csrf.CsrfViewMiddleware 来完成. 1.1 第1次 ...
- pycharm中新建并且运行django
1.对于Bottle框架其本身未实现类似于Tornado自己基于socket实现Web服务,所以必须依赖WSGI,默认Bottle已经实现并且支持的WSGI有: 帮助我们写socket的server. ...
- 【刷题】BZOJ 3238 [Ahoi2013]差异
Description Input 一行,一个字符串S Output 一行,一个整数,表示所求值 Sample Input cacao Sample Output 54 HINT 2<=N< ...
- 【比赛】HNOI2018 转盘
通过这题,我发现了我最大的缺陷,就是题目中重要的性质发现不了,所以导致后期根本做不了.还是要多做题,培养思维 对于这道题,来发现性质吧 对于每一条路线,因为它有用的就是最终的时刻,所以我们都可以把它变 ...