Python中的多重装饰器
多重装饰器,即多个装饰器修饰同一个对象【实际上并非完全如此,且看下文详解】
1.装饰器无参数:
>>>deffirst(func): print'%s()wasposttofirst()'%func.func_name def_first(*args,**kw): print'Callthefunction%s()in_first().'%func.func_name returnfunc(*args,**kw) return_first
>>>defsecond(func): print'%s()wasposttosecond()'%func.func_name def_second(*args,**kw): print'Callthefunction%s()in_second().'%func.func_name returnfunc(*args,**kw) return_second
>>>@first @second deftest():return'helloworld'
test()wasposttosecond() _second()wasposttofirst() >>>test() Callthefunction_second()in_first(). Callthefunctiontest()in_second(). 'helloworld' >>>