Встречается на 1% собеседований по Python

В чем разница между параметрическим и непараметрическим декораторами

Параметрические декораторы принимают дополнительные аргументы, кроме самой функции, а непараметрические работают только с функцией.

Непараметрический декоратор:

python
def decorator(func):
    def wrapper(*args, **kwargs):
        print("Before call")
        result = func(*args, **kwargs)
        print("After call")
        return result
    return wrapper

@decorator
def greet(name):
return f"Hello, {name}!"

text

**Параметрический декоратор:**  
```python
def repeat(n):  # Принимает параметр
    def decorator(func):  # Принимает функцию
        def wrapper(*args, **kwargs):
            for _ in range(n):
                result = func(*args, **kwargs)
            return result
        return wrapper
    return decorator

@repeat(3)  # Передаем аргумент
def say_hello():
    print("Hello!")

Параметрический декоратор требует дополнительного уровня вложенности для обработки параметров.

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы