[size=large][b]1.apply()函数[/b][/size]
学过Python的都知道Python支持可变参数,例如function_name(*parameters)或function_name(**parameters)。前者是把参数放入一个元组里,后者则是键值对的参数放入一个字典里。
Python内置一个可以讲可变参数的元组直接放入函数的参数列表的方式。
执行结果:24
[size=large][b]2.filter()函数[/b][/size]
从函数名就可以看出这是一个过滤函数。基本形式filter(function_name,sequence)。其中function_name是自定义函数,在函数function_name中定义过滤规则。sequence为待过滤序列。filter()函数的返回值有function_name()的返回值决定,当序列中的值过滤为true时即保留,最后返回所有为true的值所组成的序列。类型与元序列类型一致。
执行结果(1,3,66,77)
[size=large][b]3.reduce()函数[/b][/size]
reduce()函数可以实现连续处理功能。基本形式reduce(fucntion_name,sequence,initial)。与前面的内置函数一样function_name()函数也为自定义函数,sequence为需处理的序列。initial参数为可选参数,但是只要定义了initial参数就首先传入function_nam函数处理。
执行结果:120
360
[size=large][b]4.map()函数[/b][/size]
map()函数可以对多个序列的每个元素执行相同的操作。基本形式map(function_name,sequenece[,sequence....])。这些内置函数的参数意义差不多,通过前面几个的函数介绍都应该了解了,所以就不解释了,直接看代码吧。
执行结果:[2, 3, 4, 5, 6]
[3, 5, 7, 9, 11]
[6, 9, 12, 15, 18]
学过Python的都知道Python支持可变参数,例如function_name(*parameters)或function_name(**parameters)。前者是把参数放入一个元组里,后者则是键值对的参数放入一个字典里。
Python内置一个可以讲可变参数的元组直接放入函数的参数列表的方式。
def test(x,y,z):
return str(x*y*z)
apply(test,(2,3,4))
执行结果:24
[size=large][b]2.filter()函数[/b][/size]
从函数名就可以看出这是一个过滤函数。基本形式filter(function_name,sequence)。其中function_name是自定义函数,在函数function_name中定义过滤规则。sequence为待过滤序列。filter()函数的返回值有function_name()的返回值决定,当序列中的值过滤为true时即保留,最后返回所有为true的值所组成的序列。类型与元序列类型一致。
def validate(number):
if (number>0) and (number<100):
return number
print str(filter(validate,(0,1,3,66,77,101)))
执行结果(1,3,66,77)
[size=large][b]3.reduce()函数[/b][/size]
reduce()函数可以实现连续处理功能。基本形式reduce(fucntion_name,sequence,initial)。与前面的内置函数一样function_name()函数也为自定义函数,sequence为需处理的序列。initial参数为可选参数,但是只要定义了initial参数就首先传入function_nam函数处理。
def caculate(x,y):
return x*y
print reduce(caculate,(2,2,5,6))
print reduce(caculate,(2,2,5,6),3)
执行结果:120
360
[size=large][b]4.map()函数[/b][/size]
map()函数可以对多个序列的每个元素执行相同的操作。基本形式map(function_name,sequenece[,sequence....])。这些内置函数的参数意义差不多,通过前面几个的函数介绍都应该了解了,所以就不解释了,直接看代码吧。
def tt1(x):
return x+1
def tt2(x,y):
return x+y
def tt3(x,y,z):
return x+y+z
a1=[1,2,3,4,5]
a2=[2,3,4,5,6]
a3=[3,4,5,6,7]
b=map(tt1,a1)
print b
b=map(tt2,a1,a2)
print b
b=map(tt3,a1,a2,a3)
print b
执行结果:[2, 3, 4, 5, 6]
[3, 5, 7, 9, 11]
[6, 9, 12, 15, 18]