Junior — Middle
93
Pouvez-vous expliquer la fonction et l'utilisation du décorateur @classmethod en Python?
Entreprises à qui on a demandé
ООО Ок Софт
Réponse de l'IA
sobes.tech IA
Декоратор @classmethod в Python используется для определения метода класса, который получает сам класс в качестве первого аргумента вместо экземпляра.
Это значит, что метод может работать с атрибутами и другими методами класса, а не конкретного объекта.
Пример:
class MyClass:
count = 0
def __init__(self):
MyClass.count += 1
@classmethod
def get_count(cls):
return cls.count
obj1 = MyClass()
obj2 = MyClass()
print(MyClass.get_count()) # Выведет 2
Здесь get_count — метод класса, который возвращает количество созданных объектов. cls — ссылка на сам класс, аналогично self для экземпляра.
Используется, когда нужно работать с состоянием класса или создавать альтернативные конструкторы.