Понимание разницы между объектами и классами в Python

В Python объект и класс являются фундаментальными понятиями объектно-ориентированного программирования. Вот разница между ними:

  1. Класс. Класс — это схема или шаблон для создания объектов. Он определяет атрибуты (данные) и методы (функции), которые будут иметь объекты этого класса. Думайте о классе как о проекте для создания нескольких экземпляров (объектов) со схожими свойствами и поведением.

  2. Объект: Объект является экземпляром класса. Он представляет конкретную сущность или элемент, созданный из класса. Когда вы создаете объект, он наследует атрибуты и методы, определенные в классе. Каждый объект может иметь свои уникальные значения атрибутов, определенных в классе.

Чтобы проиллюстрировать это далее, давайте рассмотрим класс под названием «Автомобиль»:

class Car:
    def __init__(self, brand, color):
        self.brand = brand
        self.color = color

    def start_engine(self):
        print(f"The {self.color} {self.brand} car's engine has started.")

В приведенном выше примере класс «Автомобиль» имеет такие атрибуты, как «марка» и «цвет», а также метод «start_engine».

Чтобы создать объекты (экземпляры) класса «Автомобиль»:

car1 = Car("Toyota", "red")
car2 = Car("BMW", "blue")

Здесь «car1» и «car2» — объекты класса «Car». У них есть свои уникальные значения атрибутов «бренд» и «цвет».

Вы можете вызывать методы, определенные в классе, используя эти объекты:

car1.start_engine()
car2.start_engine()

Это выведет:

The red Toyota car's engine has started.
The blue BMW car's engine has started.