python的数学运算
print(16/2)print(16*0.5)
这两个运行结果:
为什么都是8.0
而不是8
Python 3.7.0 python 3.x 是真除法 本帖最后由 翩跹叶惊鸿 于 2018-10-6 15:14 编辑
只要是这个除号(/) 出来的都是浮点数(float)。
PS:这个除号(//)是地板除法,输出是不大于结果的整数,如果有浮点型则返回浮点型,如果都是整数则返回整数。比方 16//2 输出就是8了,16//1.9 得到的就是8.0 。
乘法的话,只要有一个是浮点数,出来的就是浮点数。都是整数,出来的就是整数。比方 2*4 出来的就是8。 翩跹叶惊鸿 发表于 2018-10-6 15:03
只要是这个除号(/) 出来的都是浮点数(float)。
PS:这个除号(//)是地板除法,输出是不大于结果的整 ...
print(16*0.5)
有没有“地板乘法”?
{:5_109:}{:5_109:}{:5_109:} hhzczy 发表于 2018-10-6 15:12
print(16*0.5)
有没有“地板乘法”?
并没有,乘法是2个数都是整数 出来才会是整数;只要有一个是浮点数,结果就会是浮点数。
即使是8*2.0 出来的也会是16.0
页:
[1]