Встречается на собеседованиях • сегодня

Для каких целей писал декораторы

Декораторы в Python используются для расширения или изменения поведения функций или методов без изменения их исходного кода. Основные цели:

  1. Логирование – запись информации о вызовах функций.
  2. Кэширование – сохранение результатов для ускорения повторных вызовов.
  3. Проверка прав доступа – авторизация перед выполнением функции.
  4. Тайминг – измерение времени выполнения.
  5. Обработка ошибок – автоматический retry или обработка исключений.

Пример с кэшированием:

python
from functools import lru_cache

@lru_cache(maxsize=32)
def expensive_func(x):
    print(f"Calculating for {x}...")
    return x * x

print(expensive_func(2))  # Вычисляется
print(expensive_func(2))  # Берётся из кеша

Декораторы помогают соблюдать DRY (Don't Repeat Yourself) и делают код чище.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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