Python
    About Lesson

    What is Decorators in Python?

    A decorator in Python in any callable Python object that is used to modify a function or a class. It takes in a function, adds some functionality, and returns it.

    Decorators are a very powerful and useful tool in Python since it allows programmers to modify/control the behavior of function or class. Decorators are usually called before the definition of a function you want to decorate.

    There are two different kinds of decorators in Python:

    • Function decorators
    • Class decorators

    Example

    def test_decorator(func):
    	def function_wrapper(x):
    		print("Before calling " + func.__name__)
    		res = func(x)
    		print(res)
    		print("After calling " + func.__name__)
    	return function_wrapper
    
    @test_decorator
    def sqr(n):
    	return n ** 2
    sqr(54)

    Output

    Before calling sqr
    2916
    After calling sqr