如何制作功能装饰器并将它们链接在一起?

如何制作功能装饰器并将它们链接在一起?,第1张

如何制作功能装饰器并将它们链接在一起?

查看文档,以了解装饰器如何工作。这是您要求的:

from functools import wrapsdef makebold(fn):    @wraps(fn)    def wrapped(*args, **kwargs):        return "<b>" + fn(*args, **kwargs) + "</b>"    return wrappeddef makeitalic(fn):    @wraps(fn)    def wrapped(*args, **kwargs):        return "<i>" + fn(*args, **kwargs) + "</i>"    return wrapped@makebold@makeitalicdef hello():    return "hello world"@makebold@makeitalicdef log(s):    return sprint hello()        # returns "<b><i>hello world</i></b>"print hello.__name__ # with functools.wraps() this returns "hello"print log('hello')   # returns "<b><i>hello</i></b>"


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5645636.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存