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