Sobes.tech
Junior — Middle
75

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

Answer from AI

sobes.tech AI

В проектах на Python часто используются следующие декораторы:

  • @staticmethod и @classmethod — для определения методов класса и статических методов.
  • @property — для создания свойств с геттерами и сеттерами.
  • @lru_cache из модуля functools — для кэширования результатов функций.
  • Пользовательские декораторы для логирования, проверки прав доступа, измерения времени выполнения функций.

Пример простого декоратора для логирования вызовов функции:

def log_calls(func):
    def wrapper(*args, **kwargs):
        print(f"Вызов функции {func.__name__}")
        return func(*args, **kwargs)
    return wrapper

@log_calls
def greet(name):
    print(f"Привет, {name}!")

# Использование
greet("Мир")