In [1]:
from functools import wraps
In [18]:
def first_check(f):
@wraps(f)
def decorated(*args, **kwargs):
print('first check, pre wrapped func')
returned_f = f(*args, **kwargs)
print('first check, post wrapped func')
return returned_f
return decorated
def second_check(f):
@wraps(f)
def decorated(*args, **kwargs):
print('second check, pre wrapped func')
returned_f = f(*args, **kwargs)
print('second check, post wrapped func')
return returned_f
return decorated
@first_check
@second_check
def say_hello(name='World'):
print('Hello, {0}!'.format(name))
return name
In [19]:
say_hello()
Out[19]:
In [ ]: