当前位置:首页 >> 脚本专栏

Python高阶函数与装饰器函数的深入讲解

本文主要介绍的是Python高阶函数与装饰器函数的相关内容,分享给大家,下面话不多说了,来一起看看详细的介绍吧

高阶函数

1、可以使用函数对象作为参数的函数

Python高阶函数与装饰器函数的深入讲解

2、或可以将函数作为返回值的函数

Python高阶函数与装饰器函数的深入讲解

3、函数对象:定义好的函数,使用函数名调用(不要加括号)

#将函数作为参数的高阶函数,通过传入不同的函数,可以使执行的结果不同

4、内置高阶函数

(1)map数据映射函数

map函数接收的是两个参数,一个函数,一个序列,其功能是将序列中的值处理再依次返回至列表内。其返回值为一个迭代器对象

Python高阶函数与装饰器函数的深入讲解

(2)reduce累计函数

 reduce函数也是一个参数为函数,一个为可迭代对象的高阶函数,其返回值为一个值而不是迭代器对象,故其常用与叠加、叠乘等

 Python高阶函数与装饰器函数的深入讲解

装饰器函数

1、是不修改原函数的代码的基础上,修改增加其他函数功能的函数

2、一个装饰器函数可以给n个函数添加或修改相同的功能

装饰器函数的实现方法

1、是一个嵌套函数

2、它也是一个高阶函数,将原函数作为参数,将内部函数作为返回值

3、将原函数替换为内部函数,原函数在内部函数中执行保留原函数的功能

Python高阶函数与装饰器函数的深入讲解

#通过args 和 *kwargs 传递被修饰函数中的参数

#@符号是装饰器的语法糖,在定义函数的时候使用,避免再一次赋值操作

有参装饰器(给无参装饰器上再加一层函数用于接收参数)

Python高阶函数与装饰器函数的深入讲解

总结