Em Java, se eu chamar List.toString (), ele chamará automaticamente o método toString () em cada objeto dentro da Lista. Por exemplo, se minha lista contiver objetos o1, o2 e o3, list.toString () seria algo assim:
"[" + o1.toString() + ", " + o2.toString() + ", " + o3.toString() + "]"
Existe uma maneira de obter um comportamento semelhante em Python? Implementei um método __str __ () em minha classe, mas quando imprimo uma lista de objetos, usando:
print 'my list is %s'%(list)
parece algo assim:
[<__main__.cell instance at 0x2a955e95f0>, <__main__.cell instance at 0x2a955e9638>, <__main__.cell instance at 0x2a955e9680>]
como posso fazer com que o python chame meu __str__ automaticamente para cada elemento dentro da lista (ou dict para esse assunto)?