On Jun 23, 1:32*am, "Serve Lau" <ni...@qinqin.comwrote:
What is the expected result of -1/2 in python?
Operator precedence:
Both python 2 and 3 follows the same rule for operator precedence,
see:
http://www.ibiblio.org/g2swap/byteof...recedence.html
. In -1/2, unary negative takes precedence, then division, i.e. it's
interpreted as ((-1) / 2).
Py3k and Python 2 differences:
Before Python 3, integer division is always rounds to minus infinity.
In Python 3, integer division yields floats. To use integer division
in Python 3, you use // operator.
Simple answer:
Python 2: (-1)/2 = round(-0.5) = -1
Py3k: (-1)/2 = float(-1) / float(2) = -0.5