# Still Hating Python
$ python >>> class TestClass: ... def __init__(self): ... self.x = "X" ... def __str__(self): ... return self.x ... >>> test = TestClass() >>> str(test) 'X' >>> test_list = [TestClass(), TestClass(), TestClass()] >>> test_list [<__main__.TestClass instance at 0xb7d1a4ec>, <__main__.TestClass instance at 0xb7d1a50c>, <__main__.TestClass instance at 0xb7d1a52c>] >>> str(test_list) '[<__main__.TestClass instance at 0xb7d1a4ec>, <__main__.TestClass instance at 0xb7d1a50c>, <__main__.TestClass instance at 0xb7d1a52c>]' >>> print test_list [<__main__.TestClass instance at 0xb7d1a4ec>, <__main__.TestClass instance at 0xb7d1a50c>, <__main__.TestClass instance at 0xb7d1a52c>] >>> print test_list[0] 'X'
list.__str__() calls __repr__() on each item, not __str__()???!!!
Wednesday, September 27, 2006