Message134231
Python 2.7.1 doesn't appear to do the usual implicit call to str() for subclasses of unicode. In the following snippet, I would have expected print myTest and print str(myTest) to behave the same:
>>> class Test(unicode):
... def __str__(self):
... print "In __str__"
... return (u"*** " + self + u" ***").encode('utf-8')
... def __unicode__(self):
... print "In __unicode__"
... return u"*** " + self + u" ***"
...
>>> myTest = Test(u"abc")
>>> print myTest
abc
>>> print str(myTest)
In __str__
*** abc ***
>>> print unicode(myTest)
In __unicode__
*** abc *** |
|
Date |
User |
Action |
Args |
2011-04-21 18:14:28 | opstad | set | recipients:
+ opstad |
2011-04-21 18:14:28 | opstad | set | messageid: <1303409668.43.0.708975922523.issue11900@psf.upfronthosting.co.za> |
2011-04-21 18:14:26 | opstad | link | issue11900 messages |
2011-04-21 18:14:26 | opstad | create | |
|