了解装饰器是如何工作的

时间:2019-01-19 00:06:42

标签: python python-3.x decorator

我正在研究装饰工,我已经遇到了障碍。首先是我的代码。

 def deco (f):

    def coucou():
        print("this is function{}".format(f))
        return f()
    return coucou

@deco
def salut():
    print("salut")


def hi():
    return salut()

我会尽量用我的英语不好的方式解释我的问题。如果我理解这就是应该发生的事情:我执行了hi()函数,该函数返回salut(),并且由于salut被修饰器修改了coucou,并且{{ 1}}返回....... coucou,我的意思是我期望一个无限循环,但是那不会发生,我也不明白为什么。谁能真正解释装饰器的工作原理?

1 个答案:

答案 0 :(得分:2)

xSolvpa = vpa(xSol) ySolvpa = vpa(ySol) fplot(xSolvpa,[-2.1 1.5]) hold on fplot(t,ySolvpa,[-2.1 1.5]) 中的fcoucou未经修饰的(原始)版本。