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的

相关文章推荐

关于python中,map,reduce,filter,sort函数的用法:

关于python中,map,reduce,filter,sorted函数的用法:map:map函数:map函数接受两个参数,一个是函数名,一个是可迭代对象。通过迭代,将可迭代对象里面的对象依次传入函数...

ES5中,Array新增API(上)之forEach、filter、map、reduce

forEach原型://标准 forEach(callback[,thisArg])//简单示例 Array.forEach(function(item, index, array){ //回...

javascript学习(十)— 高阶函数:map/reduce,filter,sort

高阶函数英文叫Higher-order function。那么什么是高阶函数?JavaScript的函数其实都指向某个变量。既然变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数...

Python之map、reduce、filter

原文地址:http://www.cnblogs.com/zhoujinyi/archive/2013/06/07/3121976.html 下Python 中 map,reduce,和filter ...
  • uevol14
  • uevol14
  • 2016年09月21日 22:21
  • 133

(转)Python中的map,reduce,filter,lambda内置函数

filter(function, sequence):对sequence中的item依次执行function(item),将执行结果为True的item组成一个List/String/Tuple(取决...
  • fly9006
  • fly9006
  • 2017年02月20日 16:34
  • 276

python2 filter() map() reduce()函数基础

python2 filter() map() reduce()

【python】python的内置函数apply()filter() reduce()map()

转载:http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=22920230&id=3023915 python提供了内联模块buid...

生成器、lamda表达式及map、reduce、filter函数 .

转自:http://blog.csdn.net/chlele0105/article/details/18151517 在讲解map、reduce、filter函数之前,我们先来了解一下迭代器对象(...

javaScript 高阶函数 map/reduce/filter

javaScript 高阶函数 — 一个函数接收另一个函数作为参数的函数。
  • cathar
  • cathar
  • 2016年12月24日 17:35
  • 483

python 高阶函数 map reduce filter sorted 闭包 装饰器

高阶函数英文叫Higher-order function 1.map map(func, seq,seq.....) 例如: map(lambda x,y:x+y, rang...
  • hpulfc
  • hpulfc
  • 2017年02月07日 18:31
  • 146
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:filter, mmap, reduce
举报原因:
原因补充:

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