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.

因此,在实际开发的时候,要注意这个差别,避免差别的结果。

相关文章
相关标签/搜索