装饰器

2018-10-27  本文已影响0人  李小萌mmm

装饰器实际上就是为了给某程序增添功能,但该程序已经上线或已经被使用,那么就不能大批量的修改源代码,这样是不科学的也是不现实的,所以就产生了装饰器

1.简单的装饰器


def func1():
    print('nice to meet  you ')

def outer(func):
    def inner():
        print('!!!!!!!')
        func1()
    return inner
f = outer(func1)
f()

打印的结果:
!!!!!!!
nice to meet you

2.接收多个参数的装饰器



def outer(func):
    def inner(*args,**kwargs):
        #添加修饰的功能
        print('PPPPPPPP')
        func(*args,**kwargs)
    return inner

@outer        注释:@outer就相当于 say=outer(say)
def say(name,age):
    print('my name is %s , I am %d years old'%(name,age))
say('sunck',18)




打印的结果:
PPPPPPPP
my name is sunck , I am 18 years old

上一篇下一篇

猜你喜欢

热点阅读