Python装饰器

修饰器:python装饰器就是用于拓展原来函数功能的一种函数(引入日志,函数执行时间统计,执行函数前的预处理,执行函数后的清理功能,权限校验,缓存等),这个函数的特殊之处在于它的返回值也是一个函数,使用python装饰器的好处就是在不用更改原函数的代码前提下给函数增加新的功能。本质是一个闭包。

       

#带有不定参数的通用装饰器

def deco(func):

    def wrapper(*args, **kwargs):

        ret = func(*args, **kwargs)

        return ret

    return wrapper

@deco
def f(a,b,c): 
    ……

类装饰器:

class Test():
    def __init__(self,func):
        self._func = func

    def __call__(self,*args, **kwargs):
        print("装饰器的功能")
        self._func(*args, **kwargs)

@Test#生成一个Test的对象,然后调用__init__方法,并且把下面装饰器中的函数传进去
def test(*args, **kwargs):
    print("==test==")

test()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值