lambda
1. lambda一般形式的是关键字lambda后面会跟一个或多个参数,紧跟一个冒号,以及一个表达式。lambda是一个表达式而不是一个语句。作为表达式,它返回的是一个值。
f = lambda x,y,z:x+y+z
print f(1,2,3) ----> 6
g = lambda x,y=2,z=3:z+y+z
print g(1,z=4,y=5) -----> 10
======================================================================================
2. lambda 常用来编写跳转表 就是行为的列表或者字典.
L = [(lambda x: x**2),
(lambda x: x**3),
(lambda x: x**4)]
print L[0](2),L[1](2),L[2](2) ------> 4,8,16
D = {'f1':(lambda: 2+3),
'f2':(lambda: 2*3),
'f3':(lambda: 2**3)}
print D['f1'](), D['f2'](), D['f3']() ------->5,6,8
=======================================================================================
3. map 函数可以在序列中映射函数进行操作,
def inc(x):
return x+10
L = [1,2,3,4]
print map(inc,L) --------->[11,12,13,14]
print map((lambda x:x+10),L) ----------> [11,12,13,14]