Challenge: 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.
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.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen
Can you show me an example of a logging decorator in Python?
What are some best practices for using logging decorators?
How can I customize the information that gets logged by the decorator?
Awesome!
Completion rate improved to 5.88
Challenge: Logging Decorator
Swipe um das Menü anzuzeigen
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.
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.
Lösung
Danke für Ihr Feedback!
single