Ben Finney <[EMAIL PROTECTED]> writes: > [EMAIL PROTECTED] writes: > >> For Python 2.7/3.1 I'd now like to write a PEP regarding the >> underscores into the number literals, like: 0b_0101_1111, 268_435_456 >> etc. > > +1 on such a capability. > > -1 on underscore as the separator. > > When you proposed this last year, the counter-proposal was made > <URL:http://groups.google.com/group/comp.lang.python/msg/18123d100bba63b8?dmode=source> > to instead use white space for the separator, exactly as one can now > do with string literals. > > I don't see any good reason (other than your familiarity with the D > language) to use underscores for this purpose, and much more reason > (readability, consistency, fewer arbitrary differences in syntax, > perhaps simpler implementation) to use whitespace just as with string > literals.
It seems to me that the right choice for thousands seperator is the apostrophe. It doesn't suffer from brittleness and editing problems as whitespace does (e.g. consider filling and auto-line breaking). It is already used in some locales for this function but never for the decimal point (so no ambiguity, unlike '.' and ','). It also reads well, unlike the underscore which is visually obstrusive and ugly (compare 123'456'890 to 123_456_789). Having said that, I'd still have 123_456_789 over 123456789 any day. It's amazing that after over half a century of computing we still can't denote numbers with more than 4 digits readably in the vast majority of contexts. 'as -- http://mail.python.org/mailman/listinfo/python-list