Ответ
Метод __init__
в Python — это конструктор класса. Он автоматически вызывается в момент создания нового экземпляра (объекта) и используется для инициализации его начального состояния, то есть для присвоения значений атрибутам.
Ключевые особенности:
- Первый параметр: Всегда
self
, который является ссылкой на создаваемый экземпляр. - Инициализация: Принимает аргументы (кроме
self
) для установки начальных значений атрибутов объекта. - Не возвращает значение: Его задача — модифицировать объект, а не возвращать что-либо.
Пример:
class User:
def __init__(self, username, email):
print(f"Создание нового пользователя: {username}")
self.username = username
self.email = email
self.is_active = True # Атрибут со значением по умолчанию
# При создании экземпляра User(...) автоматически вызывается __init__
user1 = User("alice", "alice@example.com")
print(user1.username) # Вывод: alice
print(user1.is_active) # Вывод: True
Если метод __init__
в классе не определен, Python использует конструктор по умолчанию от базового класса object
, который ничего не делает.