Классам нужен способ, чтобы ссылаться на самих себя. Для обращения к свойствам и методам класса внутри самого класса используется self
self – это ссылка на текущий экземпляр класса, в таких языках как Java, C#, PHP, JavaScript аналогом является ключевое слово this. Через self вы получаете доступ к атрибутам и методам класса внутри него:
Рассмотрим еще один пример класса, использующего self.
class Rectangle: def __init__(self, width, height): self.width = width self.height = height def area(self): return self.width * self.height
В приведенной реализации метод area получает доступ к атрибутам width и height для расчета площади. Если бы в качестве первого параметра не было указано self, то при попытке вызвать area программа была бы остановлена с ошибкой.
Помещать его нужно в каждый метод чтобы иметь возможность вызвать ее на текущем объекте. Self таким образом заменяет идентификатор объекта.