【发布时间】:2011-01-12 01:49:44
【问题描述】:
每个函数都有几个装饰器,有没有办法将它们打包成一个?
@fun1
@fun2
@fun3
def do_stuf():
pass
改为:
@all_funs #runs fun1 fun2 and fun3, how should all_funs look like?
def do_stuf():
pass
【问题讨论】:
-
@Torsten Marek:有任何理由或证据证明这一说法?
-
@S.Lott:这个问题专门关于编写一个封装多个装饰器调用的函数,另一个为什么装饰器上的装饰器不起作用。也许可以从另一个问题中推断出这个问题的答案,但并不简单,尤其是对于那些在装饰器概念上苦苦挣扎的人来说。
-
它们似乎都是“链接”装饰器来创建复合装饰器。