Справочник · модуль 9 «Объекты и классы»
Объекты вместе
Метод может принять другой объект и изменить его: hero.attack(monster).
Сравнение из жизни
Как игроки одной команды.
Пример
class Hero:
def __init__(self, name, hp):
self.name = name
self.hp = hp
def attack(self, other):
other.hp = other.hp - 3
hero = Hero("Бит", 10)
monster = Hero("Слизь", 8)
hero.attack(monster)
print(monster.hp)Результат
5
Учитель в уроке Метод может принять другой объект и изменить его. Герой атакует монстра, и у монстра hp уменьшается. Так объекты общаются через методы.
Запомнить
Объекты вместе — как герой и монстр в игре. Метод героя меняет здоровье монстра.
Частые ошибки новичков на этой теме
Кажется: Класс и объект — одно и то же
На самом деле: Класс — чертёж, объект — сделанная по нему вещь. Меняем нужный объект.
Кажется: Список в теле класса у каждого объекта свой
На самом деле: Своё у каждого объекта создаём в __init__ через self.
Тема из урока 9.4 «Много объектов» курса PythonAZ.