课程
/后端开发
/Python
/初识Python
"整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。" 请问怎么理解?
2017-12-25
源自:初识Python 3-1
正在回答
在过往的和现在的版本运行中,整数和浮点数在加减乘方面都满足整数整数为整数,其余任意混合都是浮点数,所以在这里可以看到整数运算都是精确的,也就是说该值就是本身,而浮点数中有无限趋近的情况,是无法精确的表达出来。但是在这个教程中的除法运算在现在的版本中如print(5/2),运行出来的结果是2.5,不是整数类型,当然5/3更是不精确的1.666666.....7。若想在现在的版本中得到除法中整数精确类型则需要取整:print(int(5/2))。这是我对这一节自身遇到的问题的看法
整数运算结果还是整数,在内存中所占字节有限,可以完全表示;浮点数运算结果还是浮点数,可能出现循环小数,在内存中无法完全表示,须得四舍五入
举报
学python入门视频教程,让你快速入门并能编写简单的Python程序