Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Learn Challenge: Logging Decorator | Built-in and Real-World Decorators
Quizzes & Challenges
Quizzes
Challenges
/
Python Decorators Explained

bookChallenge: Logging Decorator

As you have seen in the previous chapter, logging is a practical and common use case for decorators in Python. By wrapping a function with a logging decorator, you can automatically record when the function is called, along with its arguments. This approach keeps your code tidy and avoids repetitive logging statements inside every function. Logging decorators are especially useful for debugging, monitoring, or auditing function usage in real-world applications.

Task

Swipe to start coding

Write a decorator named log_calls that logs the function name and all arguments every time the decorated function is called. The decorator should print the function name followed by the positional and keyword arguments in a readable format. The original function should be called with the provided arguments, and its return value should be returned unchanged.

  • The log should use the format: Calling <function_name> with args=<args>, kwargs=<kwargs>.
  • The arguments should be shown as Python would display them (tuples and dicts).
  • The decorator must not change the return value of the decorated function.

Solution

Everything was clear?

How can we improve it?

Thanks for your feedback!

SectionΒ 3. ChapterΒ 3
single

single

Ask AI

expand

Ask AI

ChatGPT

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

close

bookChallenge: Logging Decorator

Swipe to show menu

As you have seen in the previous chapter, logging is a practical and common use case for decorators in Python. By wrapping a function with a logging decorator, you can automatically record when the function is called, along with its arguments. This approach keeps your code tidy and avoids repetitive logging statements inside every function. Logging decorators are especially useful for debugging, monitoring, or auditing function usage in real-world applications.

Task

Swipe to start coding

Write a decorator named log_calls that logs the function name and all arguments every time the decorated function is called. The decorator should print the function name followed by the positional and keyword arguments in a readable format. The original function should be called with the provided arguments, and its return value should be returned unchanged.

  • The log should use the format: Calling <function_name> with args=<args>, kwargs=<kwargs>.
  • The arguments should be shown as Python would display them (tuples and dicts).
  • The decorator must not change the return value of the decorated function.

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Β 3. ChapterΒ 3
single

single

some-alt