@ syntax ืขืืืจ decoratorsfunctools.wraps ืืฉืืืืจ metadataืืฉ ืื ื 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())
ืืฉ ืืืืืืฃ ืืช ืืฉืืจื:
get_admin_password = make_secure(get_admin_password)
ืืฉืืืืฉ ืึพdecorator ืขื @.
make_secure@make_secure ืืขื ืืคืื ืงืฆืื