2015-02-19 2 views
0

Почему отрицательный 3 делится на два отрицательный two.And три разделены на два один в Python.I пробовал это на IDLE и не " понять почему.> почему -3/2 = -2 и 3/2 = 1 в Python

, почему -3/2 = -2 и 3/2 = 1 в Python

+1

Возможно, связано: http://python-history.blogspot.com/2010/08/why-pythons-integer-division-floors.html – mgilson

+1

вы ожидаете, что ответ будет равен -1,5 и 1,5 (т. е. вопрос о целочисленном vs float division), или -1 и 1 (т. е. спрашивать о делении полов против округления к 0)? – zehnpaard

+0

для -3/2, я ожидал -1. (Извините за задержку) – knoi

ответ

0

INT разделен с помощью Int всегда округляется с новым междунар .... (в python2x по крайней мере)

print math.floor(1.5),math.floor(-1.5) 

(обратите внимание, что это, вероятно, упрощение ....)

1

Поскольку эти два числа вы разделяющие целые числа, питон 2 этажа Факторизуя 3/2. Если вы хотите получить поплавок в качестве ответа, просто сделайте вместо этого 3.0/2.0. (обратите внимание: вам не нужно это делать в python 3)

+2

Он не обходит его раундами ... (также известный как пол) –

+0

Да, это жаль, извините. – EvergreenTree

Смежные вопросы