Одни из основных концепций, которые новички встречают при изучении Python и особенно объектно-ориентированного программирования (ООП), это __init__ и self. Это ключевые элементы классов в Python, понимание которых является важным шагом в освоении языка.
Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Пример проблемы
Допустим, есть класс, который описывает сущность «Автомобиль».
class Car:
def __init__(self, color, brand):
self.color = color
self.brand = brand
Здесь видим две незнакомые конструкции: __init__ и self. Что они делают?
Разбор init
__init__ — это специальная функция, которая вызывается при создании нового объекта класса. Она также известна как конструктор класса. Это место, где обычно устанавливаются начальные значения атрибутов класса.
В примере выше, __init__ принимает три аргумента: self, color и brand. color и brand — это значения, которые передаются при создании нового объекта класса Car, и они устанавливаются в качестве атрибутов объекта.
my_car = Car('blue', 'Toyota')
В этом случае ‘blue’ и ‘Toyota’ передаются в __init__ и устанавливаются в качестве атрибутов color и brand для my_car.
На курсе Skypro «Python-разработчик» освоите основные инструменты программирования, получите опыт на реальных проектах и сможете стартовать в профессии уверенным новичком. Преподаватели — практикующие программисты с большим опытом, а в центре карьеры помогут составить цепляющее резюме и подготовиться к собеседованию.
Разбор self
self — это ссылка на текущий экземпляр класса. Это способ обращения к атрибутам и методам класса изнутри самого класса.
В примере выше, self.color = color устанавливает атрибут color текущего объекта класса Car в значение color, переданное в __init__.
Следует отметить, что self не передается при создании нового объекта класса. Python автоматически передает ссылку на текущий объект в self.
my_car = Car('blue', 'Toyota') # self не передается
В заключение, __init__ и self являются важными концепциями в Python, особенно в контексте ООП. __init__ используется для инициализации новых объектов класса, а self — для ссылки на текущий объект класса.
Перейти в телеграм, чтобы получить результаты теста





Забрать
Добавить комментарий