Negative division bug?
Carsten Haese
carsten at uniqsys.com
Thu Aug 3 14:09:10 EDT 2006
On Thu, 2006-08-03 at 13:51, Michael Yanowitz wrote:
> Hello:
>
> Just wondering if this is a bug, is this as designed,
> or do I have to import math or something to make it correct:
>
> I was just screwing around.
> and found:
> >>> -1/100
> -1
> Shouldn't it be zero?
> 1/100 returns 0
> but -1/ANY_POSITIVE_INTEGER_NUMBER
> returns -1
>
> >>> -10/3
> -4
>
> It behaves correct for positive numbers, but for negative
> integers it seems to subtract one from the expected result.
It behaves correctly in both cases. Your expectation is incorrect.
http://docs.python.org/ref/binary.html says:
"""
Plain or long integer division yields an integer of the same type; the
result is that of mathematical division with the `floor' function
applied to the result.
"""
The floor of x is the largest integer number that's less than or equal
to x. The floor of -0.01 is -1.
HTH,
Carsten.
More information about the Python-list
mailing list