Форум сайта python.su
>>> class b:
… def __init__(self):
… self.x=0
… self.y=0
… def __print__(self):
… print “%s %s”, (x,y)
…
>>> B = b()
>>> print B
<__main__.b instance at 0x00A76FD0>
>>>
Як називається метод який необхідно перевантажити аби
print B
виводив те що потрібно???
Наперід вдячний.
Офлайн
Метод __repr__(). Тоді навіть визначення __print__ непотрібне
Отредактировано (Авг. 1, 2008 16:22:28)
Офлайн
Для прикладу:
class foo(object):
def __repr__(self):
return ‘foo’
f = foo()
print f
Результат: ‘foo’
Офлайн
Если нужен только `print`, то конечно лучше переопределить `__str__` или `__unicode__`
Офлайн