これら 2 つの python 関数の違いを見つけることができません。
functools.wraps
とupdate_wrapper
違いを理解できるように、いくつかのコード例を教えてもらえますか
これら 2 つの python 関数の違いを見つけることができません。
functools.wraps
とupdate_wrapper
違いを理解できるように、いくつかのコード例を教えてもらえますか
functools.wraps
次と同等です。
def wraps(wrapped, assigned=WRAPPER_ASSIGNMENTS, updated=WRAPPER_UPDATES):
def decorator(wrapper):
return update_wrapper(wrapper, wrapped=wrapped, ...)
return decorator
実際にpartial
は内部関数の代わりに使用して実装されていますが、効果は同じです。
目的は、デコレータとして使用できるようにすることです。
@wraps(f)
def g():
...
次と同等です。
def g():
...
g = update_wrapper(g, f)