一、装饰器定义:
修改其他函数的功能的函数。有助于让我们的代码更简短,也更Pythonic(Python范儿)
二、装饰器使用场景:
需要在一个方法上添加一些额外的操作or输出,单不愿意修改该方法原有代码的情况下,装饰器是一个非常好的东西,提供2点优势:一方面可以不修改原有方法代码,原有方法再被其他方法调用可不受影响,另一方面,若多个方法需要添加相同的操作,无需每个方法修改添加,利用装饰器可以完美满足要求(如:接口自动化测试,每个接口方法执行前后输出相关日志参数信息)
三、使用步骤:
1、首先定义装饰器类,明字可自定义,此处定义为decorator,导入import functools
2、在类decorator中定义装饰器函数,函数名自定义即可,如:add_logs_for_functions
3、add_logs_for_functions中编写内部函数,函数名自定义即可,一般规范命名为:wrapper
4、需要引用该装饰器类的类顶部导入decorator类中的add_logs_for_functions方法,在需要使用装饰器方法名称上标注@add_logs_for_functions即可
三、实例:
1、装饰器类及装饰器函数定义:
2、装饰器引用
3、执行结果