Back to questions
Junior — Middle
77
Какие основные типы методов существуют в языке Python и для чего они предназначены?
Answer from AI
sobes.tech AI
В Python существуют три основных типа методов внутри классов:
-
Экземплярные методы (instance methods) — принимают первым параметром
self, который ссылается на конкретный экземпляр класса. Используются для работы с данными конкретного объекта. -
Методы класса (class methods) — объявляются с декоратором
@classmethodи принимают первым параметромcls, который ссылается на сам класс. Позволяют работать с классом в целом, а не с отдельным объектом. -
Статические методы (static methods) — объявляются с декоратором
@staticmethodи не принимают автоматически ниself, ниcls. Это обычные функции, сгруппированные внутри класса для удобства.
Пример:
class MyClass:
def instance_method(self):
print(f'Instance method called on {self}')
@classmethod
def class_method(cls):
print(f'Class method called on {cls}')
@staticmethod
def static_method():
print('Static method called')
Каждый тип метода служит своей цели и используется в зависимости от задачи.