Paul Moore <p.f.moore <at> gmail.com> writes: > 2. The internal implementation of logger.debug needs to preserve > string subclasses properly > > But the benefit is that the approach allows anyone to use brace > formatting in any API that currently accepts % format (assuming string > subclasses don't get mangled). > > On the one hand, I'd prefer a more general solution. On the other, I'm > nervous about that "assuming string subclasses..." proviso. >
You're right to be nervous: it's not hard to mangle subtypes. >>> class mystr(str): pass ... >>> s = mystr("Abc") >>> s 'Abc' >>> type(s) <class '__main__.mystr'> >>> s2 = s.replace("A", "a") >>> s2 'abc' >>> type(s2) <type 'str'> >>> _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com