Конструктор: Метод __init__(self, ...)
определяет конструктор класса. Он вызывается при создании нового экземпляра.
Параметры по умолчанию: Можно задавать значения по умолчанию для параметров в конструкторе, например: __init__(self, name="Guest", age=0)
. Если значение параметра не передано при создании объекта, будет использовано значение по умолчанию.
Пример:
class Person:
def __init__(self, name="Guest", age=0):
self.name = name
self.age = age
def greet(self):
print(f"Hello, my name is {self.name} and I am {self.age} years old.")
p1 = Person() # Используются значения по умолчанию
p2 = Person("Alice", 30) # Переданы свои значения
p1.greet() # Вывод: Hello, my name is Guest and I am 0 years old.
p2.greet() # Вывод: Hello, my name is Alice and I am 30 years old.
Важно помнить, что параметры со значениями по умолчанию должны идти после параметров без значений по умолчанию.
Конструктор в Python - это специальный метод класса, который вызывается при создании нового экземпляра этого класса. Он используется для инициализации атрибутов объекта. В Python конструктор называется __init__
.
Работа с конструктором:
__init__(self, ...)
внутри класса. self
- это ссылка на текущий экземпляр класса.
self.attribute_name = value
.
my_object = MyClass()
.
Параметры по умолчанию:
Параметры по умолчанию позволяют указывать значения для аргументов конструктора, которые будут использоваться, если при создании объекта не передать соответствующие значения. Это делает класс более гибким в использовании.
Пример:
class Person:
def __init__(self, name, age=30, city="Москва"):
self.name = name
self.age = age
self.city = city
def greet(self):
return f"Привет, меня зовут {self.name}, мне {self.age} лет, и я из города {self.city}."
# Создаем объект, используя все параметры
person1 = Person("Иван", 25, "Санкт-Петербург")
print(person1.greet()) # Вывод: Привет, меня зовут Иван, мне 25 лет, и я из города Санкт-Петербург.
# Создаем объект, используя параметр по умолчанию для возраста
person2 = Person("Мария", city="Казань")
print(person2.greet()) # Вывод: Привет, меня зовут Мария, мне 30 лет, и я из города Казань.
# Создаем объект, используя параметры по умолчанию для возраста и города
person3 = Person("Петр")
print(person3.greet()) # Вывод: Привет, меня зовут Петр, мне 30 лет, и я из города Москва.
Важные моменты:
Person(name="Анна", age=28)
).