lambda可以理解为一种小函数,但是它是一个表达式,而不是一个语句,所以在def不允许出现的地方仍然可以使用lambda函数,例如list里。但是lambda内只可以执行一个表达式。
#lambda #普通的函数 def add(x,y): return x+y print add(1,2) #lambda函数 func = lambda x,y:x+y print func(1,2) #default argument in lambda #lambda函数中的默认函数 func = lambda x,y=2:x+y print func(1) #why do we need lambda #lambda函数存在的意义 #a list of functions #一个函数列表 L = [(lambda x: x**2), (lambda x: x**3), (lambda x: x**4)] #function dictionary #函数字典 key = 'got' print {'already': (lambda: 2 + 2), 'got': (lambda: 2 * 4), 'one': (lambda: 2 ** 6) }[key]()