Short-circuit Logic

Nobody nobody at nowhere.com
Mon May 27 20:10:05 EDT 2013


On Mon, 27 May 2013 13:11:28 -0700, Ahmed Abdulshafy wrote:

> On Sunday, May 26, 2013 2:13:47 PM UTC+2, Steven D'Aprano wrote:
>
>> What the above actually tests for is whether x is so small that (1.0+x)
>> cannot be distinguished from 1.0, which is not the same thing. It is
>> also quite arbitrary. Why 1.0? Why not (0.0001+x)? Or (0.00000001+x)?
>> Or (10000.0+x)?
> 
> That may be true for integers,

What may be true for integers?

> but for floats, testing for equality is not always precise

And your point is?

What Steven wrote is entirely correct: sys.float_info.epsilon is the
smallest value x such that 1.0 and 1.0+x have distinct floating-point
representations. It has no relevance for comparing to zero.




More information about the Python-list mailing list