filter, mmap, reduce

转载 2016年08月30日 18:22:04

Python内置了一些特殊函数,这些函数很具python特性。可以让代码更加简洁。

可以看例子:

filter(function, sequence)

str = ['a', 'b','c', 'd']

def fun1(s): return s if s != 'a' else None

ret = filter(fun1, str)

print ret

## ['b', 'c', 'd']

对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决于sequence的类型)返回。

可以看作是过滤函数。

 2 map(function, sequence) 

str = ['a', 'b','c', 'd'] 

def fun2(s): return s + ".txt"

ret = map(fun2, str)

print ret

## ['a.txt', 'b.txt', 'c.txt', 'd.txt']

对sequence中的item依次执行function(item),见执行结果组成一个List返回:

map也支持多个sequence,这就要求function也支持相应数量的参数输入:
def add(x, y): return x+y 
 print map(add, range(10), range(10)) 
##[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]


3 reduce(function, sequence, starting_value):def add1(x,y): return x + y

print reduce(add1, range(1, 100))

print reduce(add1, range(1, 100), 20)

## 4950 (注:1+2+...+99)
## 4970 (注:1+2+...+99+20)

对sequence中的item顺序迭代调用function,如果有starting_value,还可以作为初始值调用,例如可以用来对List求和: 


4 lambda

g = lambda s: s + ".fsh"

print g("haha")

print (lambda x: x * 2) (3)

## haha.fsh

## 6

这是Python支持一种有趣的语法,它允许你快速定义单行的最小函数,类似与C语言中的宏,这些叫做lambda的
举报

相关文章推荐

filter,map,reduce

“filter(函数, 序列)”返回一个序列(尽可能与原来同类型),序列元素是原序列中由 指定的函数筛选出来的那些,筛选规则是“函数(序列元素)=true”。filter()可以用来取出 满足条件的子...

python map reduce filter

map函数签名:class map(object) | map(func, *iterables) --> map object | | Make an iterator that co...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Map,Filter 和 Reduce

Map,Filter 和 Reduce 三个函数能为函数式编程提供便利。 #Map会将一个函数映射到一个输入列表的所有元素上,甚至可以用于一列表的函数。 items = [1,2,3,4,5] sq...

filter、map、reduce、lambda

Python内置了一些非常有趣但非常有用的函数,充分体现了Python的语言魅力! filter(function, sequence):对sequence中的item依次执行functio...

lambda(),map(),reduce(),filter()

lambda(),map(),reduce(),filter()

filter,map,reduce

首先看一下匿名函数lambda lambda的使用方法如下:lambda [arg1[,arg2,arg3,...,argn]] : expression >>> add = lambda x,y...

Map,Filter和Reduce

Map,Filter和Reduce三个函数能为函数式编程提供便利。通过实例一个一个讨论并理解他们。 Map map会将一个函数映射到一个输入列表的所有元素上。这是它的规范: 规范:map...

Qt之Concurrent Filter和Filter-Reduce

简述QtConcurrent::filter()、QtConcurrent::filtered() 和 QtConcurrent::filteredReduced() 函数对一个序列(例如:QList...

Python之map、reduce、filter

原文地址:http://www.cnblogs.com/zhoujinyi/archive/2013/06/07/3121976.html 下Python 中 map,reduce,和filter ...

JS Array ...map ,reduce , filter..

Array共有九个方法Refer: http://www.cnblogs.com/webapi/p/5706348.htmlArray.prototype.indexOf Array.prototyp...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)