Python装饰器简单来说就是进一步封装,因为Python可以返回函数变量,所以可以对函数进行封装如:
def log(func):
def wrapper(*args, **kw):
print('call %s():' % func.__name__)
return func(*args, **kw)
return wrapper
#调用:
@log
def now():
print('2015-3-25')
解释:log()函数传now()函数, 是用func(*arg,**kw)来接收,这个函数,通过返回wrapper函数,这个达到了对now()这个函数的封装。最终达到了装饰的效果。