import functools
# A decorator is a Higher order function"_with_logging"# It takes the function to be decorated as its argument# In order to pass in some arbitrary arguments, it must be wrapped into# another HOF (Higher order function) that will receive the inputsdefwith_logging(level=logging.DEBUG, msg = None):
def_with_logging(fn):
# 'wraps' is a HOF that will give fn's name and docs to decorated_fn i.e. # decorated_fn.__name__ = fn.__name__# help(decorated_fn) = help(fn)
@functools.wraps(fn)
defdecorated_fn(*args, **kwargs):
res =fn(*args, **kwargs)
print("n***************", f"n{msg}", "nExecuting with Args: ", *args, **kwargs)
logging.log(level, res)
return res
return decorated_fn
return _with_logging
# Used this way
@with_logging(level=logging.DEBUG, msg="Some awesome comment")
defhello_world(name):
return f'Hello World {name}'
# Results after calling hello_world("John")
## ***************# Some awesome comment# Executing with Args: John# Hello World John
Posted by: Guest
on March-14-2021
Code answers related to "what the decorators in python"
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems
resetting your password contact us
Check Your Email and Click on the link sent to your email