本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
1、概念
修饰带有参数的函数的装饰器,装饰器的作用是返回一个函数的代理。
2、修饰方法
(1)定义一个装饰器函数并传递类对象
(2)在定义的装饰器函数内部定义一个代理函数对象,此代理函数对象与原函数传递的参数一致,并负责处理装饰器拦截方法等工作,最后返回一个类对象
(3)使用装饰器修饰类必须重载运算符__call__保证可被动态调用(类似与反射创建类对象)
3、实例
def decorator(fn): def proxy(*args, **kwargs): u""" 作为代理函数来调用原有的函数,并对原来的函数进行auth的校验 :param args: :param kwargs: :return: """ print("auth checking") return fn(*args, **kwargs) return proxy @decoratordef fn(a=9, b=10): print(a+b)
以上就是python修饰带参数装饰器的方法,希望能对大家有所帮助。更多Python学习指路:python基础教程