Filter

表达式:
filter(function,sequence)
 
参数:
function:要执行的函数
Sequence:要过滤的序列
 
说明:
将sequence中的每一个值传入function作为参数,如果函数返回为true的item组成一个新的List/String/Tuple(取决于sequence类型)
注意:function必须有且只有一个参数(即为传入的序列的item),否则调用filter时报错
例子:
 
  1. a=[1,2,3,4,5]  
  2. def odd(num):  
  3.     return num%2!=0 
  4. filter(odd,a)  
  5. [1,3,5#结果 

 

Map

表达式:
map(function,sequence…)
参数:
Function:要执行的函数。该函数参数数量对应着要进行map操作的sequence数量
Sequence:进行映射操作的序列(map函数中的序列数量可为多个,用逗号隔开)
说明:
对sequence中的item依次执行function(item),见执行结果组成一个List返回。

例子:

  1. def add(num,num2):  
  2.     return num+num2  
  3. a=[1,2,3,4,5]  
  4. b=[1,2,3,4,5]  
  5. map(add,a,b)  
  6. [2,4,6,8,10#结果 

 

Reduce

表达式:
reduce(function,sequence,[value])
参数:
Function:要执行的函数。(必须只能给两个参数,否则报错)
Sequence:进行reduce操作的序列
Value(可选):传入函数初始值
 
说明:
对sequence中的item顺序迭代调用function,如果有参数value,还可以作为初始值调用。
 
例子:
  1. def add(x,y): return x + y
  2. reduce(add, range(111))  
  3. 55  # 1+2+3+4+5+6+7+8+9+10  
  4. reduce(add, range(111), 20)  
  5. 75  # 1+2+3+4+5+6+7+8+9+10+20