- 1
- 2
- 3
def __repr__(self):
# почему здесь бесконечная рекурсия?
return repr(self.__repr__)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
−241
def __repr__(self):
# почему здесь бесконечная рекурсия?
return repr(self.__repr__)
http://catoverflow.com/cats/XU3AWFI.gif
<bound method Test.__repr__ of здесь будет вызов __repr__>
Эпичненько.
Один вопрос: почему str() вызывает __repr__(), когда есть __str__() ?
А у методов (класс instancemethod) походу и __str__ и __repr__ одинаково запилены.
Ну захотелось авторам: "а давайте выводить имя метода и представление объекта, на котором он навешен". Хуй знает. В питоне же такие тонкости не принято документировать.
Кстати, а есть где-то дефолтовый reps? Типа, object.repr(self), если свой repr перезаписали.
Сам же и отвечу - object.__repr__(obj)
Немного поигрался с консолькой, возвращая разную хуиту из __repr__.