Декоратор classmethod в Python

Python 内置函数Встроенные функции Python


Описание

classmethodФункция, соответствующая этому декоратору, не требует создания экземпляра класса и не нуждается в параметре self, но первый параметр должен быть параметром cls, представляющим сам класс. Его можно использовать для вызова атрибутов класса, методов класса, создания экземпляров объектов и т. д.

Синтаксис

Синтаксис classmethod:

classmethod

Parameters

  • Нет.

Возвращаемое значение

Возвращает метод класса для функции.

Пример

В следующем примере показано, как использовать classmethod:

#!/usr/bin/python # -*- coding: UTF-8 -*- class A(object): bar = 1 def func1(self): print ('foo') @classmethod def func2(cls): print ('func2') print (cls.bar) cls().func1() # Вызов метода foo A.func2() # Создание экземпляра не требуется

Результат вывода:

func2
1
foo

Python 内置函数Встроенные функции Python

Другие расширения