This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author mark.dickinson
Recipients alexey.radkov, mark.dickinson
Date 2010-11-07.10:51:25
SpamBayes Score 8.785561e-08
Marked as misclassified No
Message-id <1289127087.3.0.59046366113.issue10346@psf.upfronthosting.co.za>
In-reply-to
Content
It's not a bug:  you're seeing Python's rules for integer division, which do indeed differ from those of (some) other languages when either the divisor or the dividend is negative.  For integers x and y, in Python 2.x, x / y gives the floor of the exact quotient.

>>> -32 / 5
-7
>>> 32 / -5
-7

In Python 3.x, the '/' operator does 'true division', giving you (a floating-point approximation to) the true result:

>>> -32 / 5
-6.4
>>> 32 / -5
-6.4

You can also get this behaviour in Python 2.x if you start your script with 'from __future__ import division'.

See the documentation at:

http://docs.python.org/reference/expressions.html#binary-arithmetic-operations

for more.
History
Date User Action Args
2010-11-07 10:51:27mark.dickinsonsetrecipients: + mark.dickinson, alexey.radkov
2010-11-07 10:51:27mark.dickinsonsetmessageid: <1289127087.3.0.59046366113.issue10346@psf.upfronthosting.co.za>
2010-11-07 10:51:25mark.dickinsonlinkissue10346 messages
2010-11-07 10:51:25mark.dickinsoncreate