Python装饰器

装饰器是一种以任何方式更改,增强或更改功能工作方式的方式。

装饰器定义为@符号,后跟装饰器名称,就在函数定义之前。

例子:

@logtime
def hello():
    print('hello!')

hello功能具有logtime装饰器已分配。

每当我们打电话hello(),装饰器将被调用。

装饰器是一个将函数作为参数的函数,将该函数包装在内部函数中,该函数执行其必须执行的工作,然后返回该内部函数。换一种说法:

def logtime(func):
    def wrapper():
        # do something before
        val = func()
        # do something after
        return val
    return wrapper

更多python教程: