函数三

这里写自定义目录标题

函数三

高阶函数

一个函数可以作为参数传给另外一个函数,或者一个函数的返回值为另外一个函数(若返回值为该函数本身,则为递归),满足其一则为高阶函数。
作为函数返回值:
在这里插入图片描述
作为函数的参数:
在这里插入图片描述

匿名函数

1.lambda 表达式,lambda 函数表达式是用来创建一些简单的函数, 它是函数创建的另外一种方式。语法:lambda 参数列表:返回值。作用是:lambda 函数只会调用一次,调完之后就从内存中消失,匿名函数一般用作参数使用。如 :
print((lambda a,b : a + b)(5,2))
2.filter()函数,可以从序列中过滤出符合条件的元素,保存到一个新的序列当中。
参数:1.函数,根据该函数来过滤序列(可迭代结构);2.需要过滤的序列(可迭代结构)
返回值:过滤后的新序列

在这里插入图片描述
3.map()函数,可以对可迭代对象中所有元素做指定的操作,然后将其添加到一个新的对象中返回。
在这里插入图片描述
4.sort()函数,可以对列表进行排序。注意关键字key需要通过一个函数来作为参数。如:
在这里插入图片描述
5.sorted(),会返回一个新列表,不会改变原列表排列顺序。
在这里插入图片描述

闭包

将函数作为返回值返回(也是一种高阶函数),通过闭包可以创建一些当前函数才可以访问的对象,还可以将一些私有数据藏到闭包中。
闭包的条件:
1.函数嵌套;2.将内部函数作为返回值返回;3.内部函数标量必须使用外部函数的变量。
在这里插入图片描述

装饰器

python装饰器就是用于拓展原来函数功能的一种函数,这个函数的特殊之处在于它的返回值也是一个函数,使用python装饰器的好处就是在不用更改原函数的代码前提下给函数增加新的功能。
如:
在这里插入图片描述
总结:
start_end(fn) 类似于这样的函数其实就是一个装饰器。通过装饰器可以在不修改原函数的情况下对函数进行扩展, 在开发当中,都是通过装饰器来扩展函数的功能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值