我开始学习装饰器,但我已经遇到了障碍。首先这是我的代码。
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
修改将被执行并 coucou
返回....... salut()
,我的意思是我期望无限循环,但这并没有发生,我不明白为什么。谁能实际解释一下装饰器是如何工作的?
最佳答案
f
在coucou
是 salut
的未修饰(原始)版本.
关于python - 了解装饰器的真正工作原理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54262938/