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

Какие использовал декораторы

В Python декораторы — это функции, которые модифицируют поведение других функций. Часто использую:

  1. @staticmethod и @classmethod для методов класса:
python
class MyClass:
    @staticmethod
    def static_method():
        print("Не зависит от экземпляра/класса")

    @classmethod
    def class_method(cls):
        print(f"Вызван из класса {cls}")
  1. @property для геттеров/сеттеров:
python
class Person:
    def __init__(self, name):
        self._name = name

    @property
    def name(self):
        return self._name

    @name.setter
    def name(self, value):
        self._name = value
  1. Стандартные декораторы из functools:
  • @lru_cache для кеширования результатов
  • @wraps для сохранения метаданных функции
  1. Кастомные декораторы для логирования, тайминга, проверки прав:
python
def log_time(func):
    def wrapper(*args, **kwargs):
        start = time.time()
        result = func(*args, **kwargs)
        print(f"Время выполнения: {time.time() - start:.2f}с")
        return result
    return wrapper

Также использую декораторы в веб-фреймворках (Flask/Django), например @app.route, @login_required.

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

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

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

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