[Python-ideas] Improve readability of long numeric literals

Sven R. Kunze srkunze at mail.de
Wed Feb 10 12:35:16 EST 2016


That's one reason I am -1 on this proposal.



On 10.02.2016 02:35, Andrew Barnert via Python-ideas wrote:
> One possible objection that nobody's raised:
>
> Separating groups of three is all well and good; to my western eyes, 
> 10_000_000_000 is obviously 10 billion.*
>
> But someone from China is likely to use groups of four, and 
> 100_0000_0000 is not obviously anything--my first thought is around 
> 100 billion, but that can't be right, so I have to count up the digits.
>
> I still think this is a good suggestion, because 100000000000 is even 
> more useless to me as 100_0000_0000, and far more likely to be 
> concealing a typo. I just wanted to make sure everyone knew the issue.
>
>
> * If you're going to say "no, it's a milliard, you stupid American", 
> go back to the early 70s, and bring your non-decimal currency with 
> you. It's billion in English, and has been for 40+ years. Leave the 
> fighting to the languages where it's ambiguous, like Portuguese or 
> Finnish.
>
> Sent from my iPhone
>
> On Feb 9, 2016, at 13:40, Manuel Cerón <ceronman at gmail.com 
> <mailto:ceronman at gmail.com>> wrote:
>
>> Hi everyone!
>>
>> Sometimes it's hard to read long numbers. For example:
>>
>> >>> opts.write_buffer_size = 67108864
>>
>> Some languages (Ruby, Perl, Swift) allow the use of underscores in 
>> numeric literals, which are ignored. They are typically used as 
>> thousands separators. The example above would look like this:
>>
>> >>> opts.write_buffer_size = 67_108_864
>>
>> Which helps to quickly identify that this is around 67 million.
>>
>> Another option is to use spaces instead of underscores:
>>
>> >>> opts.write_buffer_size = 67 108 864
>>
>> This has two advantages: 1. is analog to the way string literals 
>> work, which are concatenated if put next to each other. 2. spaces are 
>> already used as thousands separator in many european languages [1].
>>
>> The disadvantage is that, as far as I known, no other languages do this.
>>
>> I have seen some old discussions around this, but nothing on this 
>> list or a PEP. With Python being use more and more for scientific and 
>> numeric computation, this is a small change that will help with 
>> readability a lot. And, as far as I can tell, it doesn't break 
>> compatibility in any way.
>>
>> Thoughts?
>>
>> Manuel.
>>
>> [1] https://docs.oracle.com/cd/E19455-01/806-0169/overview-9/index.html
>> _______________________________________________
>> Python-ideas mailing list
>> Python-ideas at python.org <mailto:Python-ideas at python.org>
>> https://mail.python.org/mailman/listinfo/python-ideas
>> Code of Conduct: http://python.org/psf/codeofconduct/
>
>
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> https://mail.python.org/mailman/listinfo/python-ideas
> Code of Conduct: http://python.org/psf/codeofconduct/

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20160210/975bd3fa/attachment.html>


More information about the Python-ideas mailing list