[转]Python 中的 lambda,filter,map,reduce,apply
1. lambda
1. 基本形式:
函数名=lambda args1,args2,...,argsn:expression
与C语言中的宏定义类似
2. Code
isodd = lambda x: x%2==0
pow2 = lambda x: x<<1
2. filter
1. 基本形式
ans=filter(function,array)相当于一个过滤函数,这里的function的返回值为布尔型,array中满足function的元素留下。
2. Code
array=[1,2,3,4,5,6,7]
isodd = lambda x: x%2==0
ans=filter(isodd,array)
print ans
3. 函数原型
def filter(function,array):
ans=[]
for each in array:
if function(each) is True:
ans.append(each)
return ans
3. map
1. 基本形式
map(function,args),对序列args进行function操作,得到结果序列。
2. Code
array=[1,2,3,4,5,6,7]
pow2 = lambda x: x<<1
ans1=map(pow2,array)
print ans1
3. 函数原型
def map(function,array):
ans=[]
for each in array:
ans.append(fun(each))
return ans
4. reduce
1. 函数原型
reduce(function,array,initval) function是一个带有两个参数的函数,array是待处理的序列,initval是初始值
2. Code
array=[1,2,3,4,5,6,7]
add = lambda x,y: x+y
ans2= reduce(add,array,0)
print ans
3. 函数原型
def reduce(function,array,initval):
tmp = list(array)
if initval is None:
ans = list.pop(0) #取列表的第一个元素,并删除
else:
ans =initval
for each in tmp:
ans = function(ans,each)
return ans; ans2= reduce(add,array,0)
5. apply
1. 基本形式
apply(function,(function的参数))是用来替代function的,
2. Code
add = lambda x,y: x+y
apply(add,(1,2))
[转]Python 中的 lambda,filter,map,reduce,apply的更多相关文章
- Python经常使用内置函数介绍【filter,map,reduce,apply,zip】
Python是一门非常简洁,非常优雅的语言,其非常多内置函数结合起来使用,能够使用非常少的代码来实现非常多复杂的功能,假设相同的功能要让C/C++/Java来实现的话,可能会头大,事实上Python是 ...
- lambda,filter,map,reduce
# lambda,filter,map,reduce from functools import reduce print('返回一个迭代器') print((x) for x in range(5) ...
- Python学习(五)函数 —— 内置函数 lambda filter map reduce
Python 内置函数 lambda.filter.map.reduce Python 内置了一些比较特殊且实用的函数,使用这些能使你的代码简洁而易读. 下面对 Python 的 lambda.fil ...
- Python中特殊函数和表达式lambda,filter,map,reduce
1.lambda:使用lambda表达式可以定义一个匿名函数 lambda表达式是一种简洁格式的函数.该表达式不是正常的函数结构,而是属于表达式的类型 (1)基本格式: lambda 参数,参数... ...
- python中的lambda、map、reduce、filter
filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决 ...
- Python高级特性: 函数编程 lambda, filter,map,reduce
一.概述 Python是一门多范式的编程语言,它同时支持过程式.面向对象和函数式的编程范式.因此,在Python中提供了很多符合 函数式编程 风格的特性和工具. 以下是对 Python中的函数式编程 ...
- Python中的lambda、map和filter
翻译.修改自https://medium.com/@happymishra66/lambda-map-and-filter-in-python-4935f248593 1.lambda lambda运 ...
- Python内置函数filter, map, reduce
filter.map.reduce,都是对一个集合进行处理,filter很容易理解用于过滤,map用于映射,reduce用于归并. 是Python列表方法的三架马车. 1. filter函数的功能相当 ...
- Python基础灬高阶函数(lambda,filter,map,reduce,zip)
高阶函数 lambda函数 关键字lambda表示匿名函数,当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便. lambda函数省略函数名,冒号前为参数,冒号后函数体. # ...
随机推荐
- SQL Server创建复合索引时,复合索引列顺序对查询的性能影响
说说复合索引 写索引的博客太多了,一直不想动手写,有一下两个原因:一是觉得有炒剩饭的嫌疑,有兄弟曾说:索引吗,只要在查询条件上建索引就行了,真的可以这么暴力吗?二来觉得,索引是个非常大的话题,很难概括 ...
- 帮助对@Repository注解的理解
定义(来自Martin Fowler的<企业应用架构模式>): Mediates between the domain and data mapping layers using a co ...
- HTML超标记语言
Html超文本标记语言,负责描绘Web世界的骨架. 〇.工具 http;//www.w3cchool.com.cn 一.Tim Bemers Lee 万维网之父: Html设计者: W3C创始人: ...
- 这有一个flag
1.并查集[1224] 2.最小生成树?? 3.topsort(好洋气): 4.归并排序[1438]: 5.差分约束系统: 6.A*算法找k短路 7.scanf: 8.搜索[P1198]华容道: 9. ...
- onethink和thinkphp3.2学习
thinkphp发布3.2版本之后,也发布了一个简单的内容管理系统onthink,这样有助于理解thinkphp3.2的使用: 一.首先最关键的一点是thinkphp3.2中加入了命名空间的使用 什么 ...
- jQuery操作Table tr td常用的方法
虽然现在DIV+CSS进行页的布局大行其道,但是很多地方使用table还是有很多优势,用table展示数据是比较方便的,下面汇总了jQuery操作Table tr td常用的方法,熟记这些操作技巧,下 ...
- javascript面向对象(2)
主要内容: 作用域 在了解作用域之前,请先看一段代码: 通过运行示例可知,变量d和c报错.在预处理阶段,预处理会将全局中的判断语句忽略,直接加var声明的变量和function声明的函数. 作用域的分 ...
- tomcat 性能优化
tomcat 性能优化tomcat默认参数是为开发环境制定,而非适合生产环境,尤其是内存和线程的配置,默认都很低,容易成为性能瓶颈. tomcat内存优化linux修改TOMCAT_HOME/bin/ ...
- pycharm 下载与配置
https://www.jetbrains.com/pycharm/download/
- Android视图绘制流程完全解析,带你一步步深入了解View(二)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/16330267 在上一篇文章中,我带着大家一起剖析了一下LayoutInflater ...