Sobes.tech
Назад к вопросам
Junior — Middle
80

Можешь назвать популярные встроенные декораторы в языке Python и привести примеры их использования?

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

sobes.tech AI

В Python есть несколько популярных встроенных декораторов:

  • @staticmethod — превращает метод класса в статический, который не принимает параметр self.
  • @classmethod — метод, который получает класс как первый аргумент вместо экземпляра.
  • @property — позволяет обращаться к методу как к атрибуту, реализуя геттеры и сеттеры.

Примеры:

class MyClass:
    @staticmethod
    def static_method():
        print("Это статический метод")

    @classmethod
    def class_method(cls):
        print(f"Это метод класса {cls}")

    def __init__(self):
        self._value = 0

    @property
    def value(self):
        return self._value

    @value.setter
    def value(self, new_value):
        self._value = new_value

obj = MyClass()
MyClass.static_method()  # вызов статического метода
MyClass.class_method()   # вызов метода класса
obj.value = 10          # использование property
print(obj.value)        # вывод 10