python编程基础之二十五

匿名函数:不用def 定义的函数,没有函数名

  • lambda只是一个表达式,函数体比def简单的多

  • lambda的函数体不再是代码块

  • lambda只有一行,增加运行效率

lambda [参数1][参数2][参数3], ... ,[参数n]  :  表达式

 函数也属于一种类型:自定义的函数就是一个函数对象,函数名保存的就是函数的地址

def test():
    print('我是测试函数')
print(test)  #函数名是变量,指向了函数对象
pf = test    #pf变量也指向了函数对象,所以也可以通过pf调用test函数
pf()
传入函数:一个函数接收另外一个函数作为参数,这类函数成为传入函数,也称高阶函数
闭包:首先有一个函数,然后在这个函数里面再定义一个函数,内部函数访问了外部函数的变量,并且外部函数最后返回值是内部函数的函数名,这就叫闭包
def outter(a): #外部函数
    x = 10
    def inner(y):  #内部函数
        print(x + y)
    inner(a)
   
outter(20)
 

 

posted @ 2018-08-08 10:59  嗨哥-higer  阅读(76)  评论(0编辑  收藏  举报