Back to questions
Junior — Middle
73
Можете объяснить, что означает термин 'self' в контексте объектно-ориентированного программирования?
Answer from AI
sobes.tech AI
В Python self — это ссылка на текущий экземпляр класса, через который внутри методов можно обращаться к атрибутам и другим методам этого объекта.
Когда вы определяете метод в классе, первым параметром всегда должен быть self (хотя имя может быть другим, но по соглашению используется именно self). При вызове метода на объекте Python автоматически передаёт ссылку на этот объект в параметр self.
Пример:
class Person:
def __init__(self, name):
self.name = name
def greet(self):
print(f"Привет, меня зовут {self.name}")
p = Person("Аня")
p.greet() # Выведет: Привет, меня зовут Аня
Здесь self.name — это атрибут конкретного объекта p. Без self методы не смогут знать, с каким именно объектом они работают.