コードは、私はこのコードを実行すると、それはどちらかに1,2,3の合計を印刷するのではなく、誰かがこのデコレータコードを私に説明してもらえますか?
class tracer:
def __init__(self, func):
self.calls = 0
self.func = func
def __call__(self, *args):
self.calls += 1
print('call %s to %s' % (self.calls, self.func.__name__))
self.func(*args)
@tracer
def spam(a, b, c):
print(a + b + c)
spam(1, 2, 3)
またマーク・ルッツでの学習のPython第4版から撮影されています本、それはそれが表示されます! 私はこのコード全体を頭で掻き回しています。私はここで何が起こっているのか分かりません。
に*が何*が起こるのでしょうか? – jheld