Python 求GCD的lambda表达式:
f = lambda x,y:x if y==0 else f(y, x%y)
它的效果相当于:
def f(x,y):
if y == 0:
return x
return f(y,x%y)
关于lambda表达式
1 python lambda会创建一个函数对象,但不会把这个函数对象赋给一个标识符,而def则会把函数对象赋值给一个变量。
2 python lambda它只是一个表达式,而def则是一个语句。
它可以像使用普通函数那样使用,甚至可以使用参数默认值及递归。
格式:lambda arg1,arg2,...:expression