Вызвать метод класса в этом же классе python
Учу ооп в питон, столкнулся с ошибкой, которую не понимаю. Я хочу вызвать метод класса внутри него самого, но получаю ошибку NameError: name 'self' is not defined
Мой код:
class Cat:
def __init__(self,name='Alex'):
self.name=name
def prnt(self):
print(self.name)
self.prnt()
p1=Cat()
Ответы (1 шт):
Автор решения: Эникейщик
→ Ссылка
При создании экземпляра класса выполняется только __init__(), поэтому можете добавить туда необходимую инструкцию:
def __init__(self, name='Alex'):
self.name = name
print(self.name)
Если же хочется именно метод класса, то вызвать его в __init__():
class Cat:
def __init__(self, name = 'Alex'):
self.name = name
self.prnt()
def prnt(self):
print(self.name)