Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Challenge: Decorate Multiple Functions | Decorator Fundamentals
Python Decorators Explained

bookChallenge: Decorate Multiple Functions

Decorators in Python are designed to be reusable, meaning you can apply the same decorator to many different functions. This flexibility allows you to add the same behaviorβ€”such as logging, timing, or validationβ€”to multiple functions without repeating code. By defining a decorator once and then applying it wherever needed, you keep your codebase clean and consistent. When a decorator is applied to more than one function, each function will receive the additional functionality provided by the decorator, but the core logic of each function remains unchanged. This approach is especially powerful for cross-cutting concerns like debugging or monitoring, where you want to add the same action to various parts of your program.

Task

Swipe to start coding

Create a decorator named log_function_name that logs the name of any function it decorates before the function is called. Apply this decorator to both greet and add. When either function is called, the decorator must print the function's name before executing the function and returning its result.

Solution

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 1. ChapterΒ 4
single

single

Ask AI

expand

Ask AI

ChatGPT

Ask anything or try one of the suggested questions to begin our chat

Suggested prompts:

Can you show me an example of how to apply the same decorator to multiple functions?

What are some common use cases for decorators in real-world projects?

How do I write my own reusable decorator in Python?

close

bookChallenge: Decorate Multiple Functions

Swipe to show menu

Decorators in Python are designed to be reusable, meaning you can apply the same decorator to many different functions. This flexibility allows you to add the same behaviorβ€”such as logging, timing, or validationβ€”to multiple functions without repeating code. By defining a decorator once and then applying it wherever needed, you keep your codebase clean and consistent. When a decorator is applied to more than one function, each function will receive the additional functionality provided by the decorator, but the core logic of each function remains unchanged. This approach is especially powerful for cross-cutting concerns like debugging or monitoring, where you want to add the same action to various parts of your program.

Task

Swipe to start coding

Create a decorator named log_function_name that logs the name of any function it decorates before the function is called. Apply this decorator to both greet and add. When either function is called, the decorator must print the function's name before executing the function and returning its result.

Solution

Switch to desktopSwitch to desktop for real-world practiceContinue from where you are using one of the options below
Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 1. ChapterΒ 4
single

single

some-alt