nested decorator with param and arguments

import functools

def wrap(name: str):
    def wrapper(f):
        print("within the first wrapper")
        print(f, name)

        @functools.wraps(f)
        def wrapper2(place: str):
            print("this is the place", place)

            result = f(place)
            print(result)

        return wrapper2

    return wrapper

@wrap("tester")
def handle(place):
    print("@", place)
    return "@"+place



result = handle("Singapore")
print(result)

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s