Josiah Carlson wrote: > Greg Ewing <[EMAIL PROTECTED]> wrote: > >> $[68656C6C6F] > > I think it's a bad idea to choose a representation with any format that > isn't able to do the eval(repr(obj)) loop.
The intention was for that to be a valid literal syntax as well. > It may be the case > that b"stuff" is the most concise and reasonable repr form... I can only see it being the most concise when most of the bytes can be meaningfully interpreted as characters. Otherwise it's full of \xyy escapes, making it up to twice as long as necessary and harder to read. I can't help feeling the people arguing for b"..." as the repr format haven't really accepted the fact that text and binary data will be distinct things in py3k, and are thinking of bytes as being a replacement for the old string type. But that's not true -- most of the time, *unicode* will be the replacement for str when it is used to represent characters, and bytes will mostly be used only for non-text. I know that there will be exceptions, such as when writing code to deal with raw SMTP connections and such like. But how often do people write code like that? Usually it's written once and put in a library. I think these cases will be in the minority. Guido wrote: > If you want all hex, use the .hex() method described in the PEP. That seems back-to-front to me. The default repr should not be making assumptions about the meaning of the bytes. It would make more sense to have a .chars() method or something for when you want it interpreted that way. -- Greg _______________________________________________ Python-3000 mailing list Python-3000@python.org http://mail.python.org/mailman/listinfo/python-3000 Unsubscribe: http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com