最佳答案
在 Java 中,如果我调用 List.toString(),它将自动调用 List 中每个对象的 toString()方法。例如,如果我的列表包含对象 o1、 o2和 o3,那么 list.toString()应该是这样的:
"[" + o1.toString() + ", " + o2.toString() + ", " + o3.toString() + "]"
有没有办法在 Python 中获得类似的行为?我在我的类中实现了一个 __str__()方法,但是当我打印出一个对象列表时,使用:
print 'my list is %s'%(list)
它看起来像这样:
[<__main__.cell instance at 0x2a955e95f0>, <__main__.cell instance at 0x2a955e9638>, <__main__.cell instance at 0x2a955e9680>]
如何让 python 为列表中的每个元素自动调用我的 __str__()(或者就此而言,使用 dict) ?