def log_execution(func):
funcを引数にとるlog_executionという名前の関数(デコレーター)を定義します。
def wrapper(*args, **kwargs):
内部関数wrapperを定義します。これは任意の引数を受け取ります。
print(f'Executing {func.__name__}')
ラップされた関数が呼び出される前に、その関数名を含むメッセージを出力します。
return func(*args, **kwargs)
ラップされた関数を呼び出し、その結果を返します。
return wrapper
log_execution関数はwrapper関数を返します。
@log_execution
calculate_sum関数に適用されるlog_executionデコレーターを指定します。
def calculate_sum(a, b):
aとbを引数にとるcalculate_sumという名前の関数を定義します。
return a + b
aとbの合計を返します。