Sobes.tech
Junior — Middle
111

Можете ли вы объяснить, что представляет собой декоратор для методов класса в Python?

Компании, где спрашивали
IT OneIT One

Ответ от нейросети

sobes.tech AI

Декоратор для методов класса в Python — это функция, которая принимает метод класса и возвращает модифицированную версию этого метода. Он позволяет добавить дополнительное поведение к методу без изменения его исходного кода.

Например, можно использовать декоратор для логирования вызовов метода, проверки прав доступа или кэширования результатов.

Пример простого декоратора для метода класса:

class MyClass:
    def decorator(func):
        def wrapper(self, *args, **kwargs):
            print(f"Вызов метода {func.__name__}")
            return func(self, *args, **kwargs)
        return wrapper

    @decorator
    def method(self, x):
        return x * 2

obj = MyClass()
print(obj.method(5))  # Выведет сообщение и результат 10

Здесь @decorator оборачивает метод method, добавляя дополнительный вывод при вызове.