Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Python: oop, class

Как в Python реализуются методы класса?

Этот вопрос проверяет знание о методах класса, их особенностях и отличиях от методов экземпляра.

Короткий ответ

Методы класса определяются с помощью декоратора @classmethod. Первый аргумент такого метода — cls, который ссылается на сам класс. Они могут использоваться для работы с классом, а не с конкретным экземпляром.

Длинный ответ

Метод класса позволяет обращаться к самому классу, а не к экземпляру. Для его создания используется декоратор @classmethod.

Особенности:

  • Первый аргумент — cls (ссылка на класс).

  • Подходит для создания альтернативных конструкторов или работы с класс-атрибутами.

Пример:

class MyClass:
    	class_variable = 0

    	@classmethod
    	def increment_class_variable(cls):
        	cls.class_variable += 1

MyClass.increment_class_variable()
print(MyClass.class_variable)  # 1

Когда использовать:

  • Для работы с атрибутами класса.

  • Для создания объектов через альтернативные конструкторы

Пример альтернативного конструктора:

class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    @classmethod
    def from_string(cls, data_string):
        name, age = data_string.split(",")
        return cls(name, int(age))

person = Person.from_string("Alice,30")
print(person.name, person.age)  # Alice 30
  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    3

  • Сложность:

    4

Навыки

  • Python

    Python

Ключевые слова

#oop

#class

Подпишись на Python Developer в телеграм

  • Аватар

    Python Guru

    Sergey Filichkin

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.