Когда Python программисты начинают погружаться в удивительный мир ООП, его сразу охватывает много вопросов. А от количества информации порой можно удивляться. Важной частью классов в Python являются магические методы, получившие второе название - дандер методы (d under - double under, потому что такие методы записываются с 2 нижними подчёркиваниями по бокам, пример __new__). Они значительно могут упростить жизнь разработчика, а иногда без них просто нельзя обойтись. Сегодня мы узнаем, почему нельзя просто так сравнивать объекты 1 класса, чем это может быть опасно, и как обойти. Внимательно посмотрите на ниже приведённый код: Задайте себе вопрос, что должно быть выведено по завершению этого кода? Ответили False? Поздравляю, вы хорошо помните ООП. Иначе не расстраивайтесь, и давайте разбираться. За сравнение объектов класса отвечает такой магический метод , как __eq__, в котором можно сравнить тот атрибут экземпляра класса, который мы выберем. Реализация метода