[Python-Dev] unicode inconsistency? (original) (raw)

Neil Schemenauer nas at arctrix.com
Thu Sep 9 21:57:32 CEST 2004


On Thu, Sep 09, 2004 at 03:11:51PM -0400, Tim Peters wrote:

'%s' is documented as "String (converts any python object using str())". It's str(A()) that raises the exception you're seeing, not interpolation.

Shouldn't '%s' % u'\u1234' also raise an exception then?

To worm around that, you'll effectively have to duplicate PyObjectStr's implementation

Yes. I want something like "PyObject_UnicodeOrStr" that would return either a unicode object or a str object. That would make it easier to write code that produces 'str' results if unicode characters don't appear in any of the inputs. Having str methods that can return either 'unicode' or 'str' objects is also very handy (I don't see how you can say that it doesn't make any sense).

Perhaps I am on the wrong track. However, if I understand the /F bot correctly, he favours a design that does not force everthing to unicode strings.

Neil



More information about the Python-Dev mailing list