Python取模與C語言取模的差別

最近在學習Python, 在取模運行時看到以下鏈接:http://www.2cto.com/kf/201106/94661.html,描述其和C語言進行對比發現存在差別。html

如Python:學習

divmod(-45, 7)  = (-7, 4)htm

而C是:開發

-45 % 7 = -3語言

-45 / 7 = -6di

猜測:co

Python在求模的時候,獲得的商不得大於實際商的最大整數。math

就是說,在Python中,

-45 % 7 獲得的商就是math.floor(-45/7) = -7

而C語言是取絕對值最小整數,即:

(int)(-45 / 7) = -6

補充:取的商不一樣,最終獲得的餘樹就不同了。好比:(-45) - (7 × (-7))= 4; 而 (-45) - (7 × (-6)) = 3.

因此,在實際開發的時候,要注意這個差別,避免差別的結果。

相關文章
相關標籤/搜索