Python装饰器,嵌套函数

这个问题在这里已经有了答案:

  • 如何创建一个函数装饰器链? 15个答案

  • 为什么第二个样本不起作用?

    因为你正在调用返回函数,所以你没有返回函数。

  • 为什么参数,如果我们使用嵌套函数,kwargs会“神奇地”出现?

    它们并不神奇,我们正在宣布它们,如下所示:

    def deco(*args, **kwargs):
    

    这些是通用的,并且将匹配任何函数签名(参数列表)。 你不必称他们为argskwargs ,这只是一个惯例,你可以称他们为sharontracy

  • 我能做什么,使第二个样本工作? 除了嵌套另一个功能,当然。

    那么你没有说你期望第二个样本做什么。 但是我想把它变成一个装饰器:

    def func(f):
        return f
    

    但是这并不是很多!

  • 顺便说一句,覆盖现有的Python内置( sum )通常是一个坏主意 - 你必须有一个很好的理由。

    链接地址: http://www.djcxy.com/p/23803.html

    上一篇: python decorators, nested function

    下一篇: What does a Python decorator do, and where is its code?