neo08
Авг. 1, 2008 16:19:23
>>> 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
виводив те що потрібно???
Наперід вдячний.
regall
Авг. 1, 2008 16:21:20
Метод __repr__(). Тоді навіть визначення __print__ непотрібне
regall
Авг. 1, 2008 16:24:19
Для прикладу:
class foo(object):
def __repr__(self):
return ‘foo’
f = foo()
print f
Результат: ‘foo’
Александр Кошелев
Авг. 1, 2008 18:27:49
Если нужен только `print`, то конечно лучше переопределить `__str__` или `__unicode__`