Python decorator is essentially a python function, which allows other functions to add additional features without any code changes. The return value of the decorator is also a function object. In short, a decorator is a function that returns a function.