when it comes to printing lists? Basically I want to print out a list
with elements of my own class, but when I overwrite __str__, __str__
doesn't get called but if I overwrite __repr__, __repr__ will get
called. Is this a bug?
For example:
.... def __str__(self):>>class StrElement(object):
.... return "String Element"
....
[<__main__.StrElement object at 0xb7dc05cc>, <__main__.StrElement>>a = [StrElement(), StrElement()]
print a
object at 0xb7dc048c>]
String Element>>print StrElement()
But if overwrite __repr__:
.... def __repr__(self):>>class ReprElement(object):
.... return "Repr Element"
....
[Repr Element, Repr Element]>>b = [ReprElement(), ReprElement()]
print b
Repr Element>>print ReprElement()