搬马

导航

 

函数参数补充:

还可以这样传参:

def f(*args):
    print(args)
f(*[1,3,4,5])
#输出结果:(1, 3, 4, 5)    注意这是一个元组

def f2(**kwargs):
    print(kwargs)
f2(**{'name':'alex','age':18})
#输出结果:{'age': 18, 'name': 'alex'}     注意这是一个字典

 

高阶函数:

1、函数名可以进行赋值

2、函数可以作为函数参数,还可以作为函数的返回值

 

 

递规函数:

def fact(n):
    if n==1:
        return 1
    return n*fact(n-1)

print(fact(5))

关于递归的特性:
1、调用自身函数
2、有一个结束条件

但凡是递归可以写的循环都可以解决。
递归的效率在很多时候会很低。

 

匿名函数:

匿名函数的命名规则,用lambda关键字标识,冒号左侧表示函数接收的参数(a,b),冒号右侧表示函数的返回值(a+b)。

因为lamdba在创建时不需要命名,所以,叫匿名函数

lambda a,b : a+b

 

posted on 2018-01-29 20:38  搬马  阅读(89)  评论(0编辑  收藏  举报