整除还是完美除?Python关于除法的见解
背景
看过的博客说,在除法问题上,python的创造者经过一段时间的心理博弈。我们知道在c语言中,'/'号是是自己通过两边运算数的类型来判断结果的类型的,只要两边有一个浮点数,结果便是浮点数类型。而创始人对此混淆不明的方式比较反对,为了突出除法运算的明确性,提出使用'//'来表示整数除法,起初这种用法还不受重视,使用起来比较麻烦(相较于'/'来说还需要声明)。在3.x的版本后,'//'便有了和'/'一样的地位。
各种除法辨析
- /:这种除法计算的结果是浮点数,即使两边是整数且整除也不会例外
- //:也称地板除,结果为整数,且总是会舍去小数部分,可以理解为数学中的向下取整
- %: 就是取整,不多说了。
看一个简答代码就能理解其中的区别了


浙公网安备 33010602011771号