函数:
def 函数名(参数列表):
函数体
函数默认返回值为None
向函数传元组和字典:
fun(*args)//传元组,需要一一对应
fun(**args)//传字典,需要一一对应
处理多余参数:
def fun(*args,**args)
2 |
def fun(x, * args, * * dargs): |
6 |
fun( 1 , 2 , 3 , 4 , 5 ,y = 20 ,z = 30 ) |
lambda表达式:
def fun(x,y):
print x*y
对应的lambda表达式为:g = lambda x,y:x*y//冒号前是参数,冒号后是返回值,整个lambda表达式返回一个函数对象
lambda的应用——阶乘:
07 |
reduce (f,l) / / 返回 120 ,将 1 * 2 赋给x,再将 3 赋给y…… |
09 |
对应 lambda 表达式: reduce ( lambda x,y:x * y, range ( 1 , 6 )) |
python没有switch语句,但是可以使用字典和函数结合来实现
上面等价于:{1:case1,2:case2}.get(x,lambda *args,**dargs:)()
来源:http://my.oschina.net/chape/blog/123510