Ctrl K
Python · Junior · Theory

What is a decorator in Python? How would you write your own decorator, for example one that measures how long a function takes to run?

~4 min by voice

How to approach it

The interviewer wants to see whether you understand how decorators work under the hood: functions are first-class objects, the wrapper is a closure, and @ is syntactic sugar. They also check whether you can write a correct decorator on the spot, one that passes arguments through and returns the result.

Have you seen this question in a real interview?
Answers0
Avg. score—
Strong—
Practiced0
Topics
Similar questionsWrite a debounce function. It takes another function and a delay in milliseconds and returns a new function that calls the original only once that delay has passed since the last call. JuniorWrite a decorator called timed that measures how long the wrapped function took to run and prints its name and execution time. The function's result should be returned as is, and the arguments can be anything. JuniorWrite a retry decorator with parameters: the number of attempts, the pause between attempts, and a tuple of exceptions on which to retry. If all attempts end in an error, the last exception should propagate out. Mid-levelHow would you write a decorator with parameters, for example a retry with a configurable number of attempts? What are the pitfalls of decorators in production code? SeniorWhat is a closure in JavaScript? Give an example of where it's used in practice. Junior

Answer by voice

The interviewer will ask this question and listen. Think out loud and ask for a hint if you need one. When you're done, pause or tap “That's my answer”. In about a minute, your score and the points you covered show up here.

Sign in to answer

Best with headphones · ~4 min