Python除法

Python支持三种除法相关运算符:

/ 真正的除
// 整数除法
% 模运算符

除数和被除数均为正数

Python中,/运算符表示真正的除,运算返回一个浮点型的计算结果。因此27/4得到一个浮点型的值6.75
Python支持//%进行整数运算,,表达式27//4运算的值是整型的6,表达式27%4运算的值是整型的3,即整数除法的余数。

>>> 27 / 4
6.75
>>> 27 // 4
6
>>> 27 % 4
3

注意,在C、C++和Java中不支持//运算符。


除数和被除数至少存在一个负数

特别的,在被除数和除数存在负数的情况下,python谨慎地扩展了//%的语义。设nm分别代表商式\frac{n}{m}的被除数和除数,q=n//mr=n\%m。Python严格保证q\times m + r =n

  • 当被除数为负数,除数为正数,即n<0, m>0时,余数r为正数。例如在\frac{-27}{4}中,由于-7\times 4 + 1 =-27,所以q=-27//4=-7r=-27\%4=1
>>> -27 / 4
-6.75
>>> -27 // 4
-7
>>> -27 % 4
1
  • 当被除数为正数,除数为负数,即n>0, m<0时,余数r为负数。例如在\frac{27}{-4}中,由于-7\times -4 + (-1) =27,所以q=27//-4=-7r=27\%-4=-1
>>> 27/-4
-6.75
>>> 27//-4
-7
>>> 27%-4
-1
  • 当被除数为负数,除数为负数,即n<0, m<0时,余数r依旧为负数。例如在\frac{-27}{-4}中,由于6\times -4 + (-3) =-27,所以q=-27//-4=6r=-27\%-4=-3
>>> -27 / -4
6.75
>>> -27 // -4
6
>>> -27 % -4
-3

总结

python中存在三种除法相关运算符///%,分别表示真正的除、对商求整和取余。当运算式存在负数时,对于\frac{n}{m},Python严格保证q\times m + r =n,其中rm符号相同,即两者同为正数或同为负数。该规则可以扩展到浮点型操作数。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。