对于“/”,不难理解,就相当于数学中的除法运算例如:
print(6/5)
print(-6/5)
其输出的结果为:
1.2
-1.2
那么我们重点要讲解的是“//”,对于“//”我们课表示为一种特殊的除法在这里我们可以称之为“地板除”,那么什么是地板除呢?
大家先看下面这段代码:
print(6/5)
print(6//5)
print(4//5)
其输出结果为:
1.2
1
0
看到这里,大家也许会认为这不就是取余嘛,其实并不然, 我们可以接着来试试负数:
print(-6/5)
print(-6%5)
print(-6//5)
输出的结果为
-1.2
4
-2
到这里我们会发现,
当输出“-6//5“的时候其结果为-2,而并非取余,因此,我们可以这样说”//“表示的是向下取整,取比目标结果小的最大整数,而“-6地板除5”的值应为-2。
内置函数divmod()的作用就算同时计算两数地板除的结果和取余后的结果,就是返回结果为(x//y,x%y)
例如:
print(divmod(6,5))
print(divmod(-6,5))
结果为:
(1,1)
(-2,4)