今天在学习python时发现一个奇怪的问题,明明可以整除的两个整数为什么运算结果却是浮点数呢?
#打印不同性别的鸡及数量
print("Hens",25+30/6)
终端运行结果
接下来分别用除法和取整除法对整数,浮点数进行了实验。
代码片段
#可以整除的两个整数相除
print("6/3 = ",6/3)
print("6//3 = ",6//3)
#可以整除的两个浮点数相除
print("6.0/3 = ",6.0/3)
print("6.0//3 = ",6.0//3)
#不可以整除的两整数相除
print("7/3 = ",7/3)
print("7//3 = ",7//3)
#不可以整除的两个浮点数相除
print("7.0/3 = ",7.0/3)
print("7.0//3 = ",7.0//3)
运行结果
结论
显然,在传统除法中,不管运算的是整数还是浮点数,计算结果都为浮点数。
不同的是,取整除法运算结果与输入值紧密相关。即当两个整数相除时,运算结果都为整数。另一方面,只要有一个浮点数参与运算,结果都为浮点数。