First page Back Continue Last page Overview Image

Manuelle Abhilfe

Wir können die ursprünglichen Attribute einer Funktion retten, indem wir sie bei der Dekoration an die Wrapper-Funktion zuweisen:

def greeting(func):

def function_wrapper(x):

print("Hi, " + func.__name__ + " returns:")

return func(x)

function_wrapper.__name__ = func.__name__

function_wrapper.__doc__ = func.__doc__

function_wrapper.__module__ = func.__module__

return function_wrapper

Besser:

from functools import wraps def greeting(func): @wraps(func) def function_wrapper(x): print("Hi, " + func.__name__ + " returns:") return func(x) return function_wrapper