@hoge
みたいなやつ
def poko(func):
print "poko"
return "poko_string"
@poko
def hoge():
pass
で
def hoge():
pass
hoge = poko(hoge)
と同じ。
実際はfunctoolのwraps関数を使ったり
from functools import wraps
def poko(func):
@wraps(func)
def wrapper(*args, **kwargs):
""" 加えたい動作 """"
# do pokopoko
# add hogehoge とか
return func(*args, **kwargs)
return wrapper
@poko
def hoge():
pass
みたいに