Задать вопрос
@IIggoorrII

Откуда взялась неконтролируемая рекурсия в методе __repr__?

class c():
    def __repr__(self):
        return f"{self}"

Вот такой простенький кусок кода приводит к бесконечной рекурсии.
Но откуда она?
  • Вопрос задан
  • 99 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Skillbox
    Python-разработчик
    10 месяцев
    Далее
  • ProductStar
    Профессия: Python-разработчик
    8 месяцев
    Далее
Решения вопроса 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
Думаю, дело в том, что запись f”{self”} пытается вернуть строковую запись объекта. Но строковая запись объекта как раз и возвращается методом __repr__, то-есть самим собой. Вот и получается, что оно само себя вызывает.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы