[Python-Dev] Backporting PEP 3101 to 2.6
Nick Coghlan
ncoghlan at gmail.com
Sun Feb 17 01:09:48 CET 2008
Eric Smith wrote:
> The bad error message is a result of __format__ passing on unicode to
> strftime.
>
> There are, of course, various ugly ways to work around this involving
> nested format calls.
I don't know if this fits your definition of "ugly workaround", but what
if datetime.__format__ did something like:
def __format__(self, spec):
encoding = None
if isinstance(spec, unicode):
encoding = 'utf-8'
spec = spec.encode(encoding)
result = strftime(spec, self)
if encoding is not None:
result = result.decode(encoding)
return result
Cheers,
Nick.
--
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
---------------------------------------------------------------
http://www.boredomandlaziness.org
More information about the Python-Dev
mailing list