Короткий ответ
Класс в Python — это логическая сущность, описывающая набор однотипных объектов: она содержит атрибуты (данные) и методы (поведение). Класс можно рассматривать как «чертёж», по которому создаются объекты, а объект, или экземпляр, — конкретная реализация этого чертежа со своим состоянием.
Как это работает подробнее
Класс объявляется ключевым словом class, после которого идут имя класса и тело с отступом. Экземпляр создаётся вызовом класса как функции: имя = ИмяКласса(аргументы).
- Атрибуты класса. Переменные, заданные на уровне класса, являются общими для всех экземпляров.
- Атрибуты экземпляра. Переменные, присвоенные через
selfвнутри__init__(), принадлежат каждому конкретному объекту. - Метод __init__. При создании экземпляра Python автоматически вызывает
__init__(), который инициализирует атрибуты нового объекта. - Методы. Функции внутри класса получают доступ к экземпляру через параметр
selfи описывают его поведение. - Всё есть объект. В Python практически всё, с чем работает программист, является объектом какого-либо класса.
Пример кода
Класс Car и его экземпляры
class Car:
brand = 'Toyota' # атрибут класса — общий для всех машин
def __init__(self, model, year):
self.model = model # атрибуты экземпляра
self.year = year
def info(self):
return f'{self.brand} {self.model}, {self.year} год'
car1 = Car('Camry', 2020) # вызов класса создаёт экземпляр
car2 = Car('RAV4', 2021)
print(car1.info()) # Toyota Camry, 2020 годЧто использовать на практике
- Моделирование сущностей. Класс уместен, когда нужно описать повторяющуюся сущность с данными и поведением — пользователя, заказ или автомобиль.