๐ŸŽฏ Objectives


ื—ืœืง 1: ืงื•ื“ ืงื™ื™ื ืžื”ืฉืœื‘ ื”ืงื•ื“ื

ื”ืกื‘ืจ

ื™ืฉ ืœื ื• decorator ืฉืขื•ื˜ืฃ ืคื•ื ืงืฆื™ื” ื•ืžื‘ืฆืข ื‘ื“ื™ืงืช ื”ืจืฉืื•ืช.

ืงื•ื“

user = {
    "username": "jose",
    "access_level": "guest"
}

def make_secure(func):
    def secure_function():
        if user["access_level"] == "admin":
            return func()
        else:
            return f"No admin permissions for {user['username']}"
    return secure_function

def get_admin_password():
    return "1234"

get_admin_password = make_secure(get_admin_password)

print(get_admin_password())

ื—ืœืง 2: ื”ืžืฉื™ืžื” โ€“ ืžืขื‘ืจ ืœึพ@ syntax

ื”ืกื‘ืจ

ื™ืฉ ืœื”ื—ืœื™ืฃ ืืช ื”ืฉื•ืจื”:

get_admin_password = make_secure(get_admin_password)

ื‘ืฉื™ืžื•ืฉ ื‘ึพdecorator ืขื @.

ื“ืจื™ืฉื•ืช