1. lambda
1. 基本形式:
与C语言中的宏定义类似
2. Code
isodd = lambda x: x%2==0
pow2 = lambda x: x<<1
2. filter
1. 基本形式
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. 基本形式
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. 函数原型
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. 基本形式
2. Code
add = lambda x,y: x+y
apply(add,(1,2))