Python lambda
其实就可以当作表达式的意思。
比如
g = lambda x:x+1 """ x为入口参数,x+1为函数体 等价于下面这个函数的定义 def g(x): return x+1 """
可以当作一个表达式为每次加1,那个分号可看作等于。
>>> g = lambda x:x+1 >>> g(2) 3 >>> g(998) 999 >>>
还有filter, map, reduce这三个内建的标准函数。
>>> foo = [2, 18, 9, 22, 17, 24, 8, 12, 27] >>>
>>>#符合表达式的则输出 >>> print filter(lambda x: x % 3 == 0, foo) [18, 9, 24, 12, 27] >>>#求foo乘2加10 >>>
>>> print map(lambda x: x * 2 + 10, foo) [14, 46, 28, 54, 44, 58, 26, 34, 64]
>>> >>>#求foo的总和 >>> print reduce(lambda x, y: x + y, foo)
139
By:珍惜少年时博客:http://www.cnblogs.com/xishaonian/
*-------------------------------------------*