round函数在python中似乎很棘手。 对于回合(51.665,2),它显示 51.66 而回合(51.765,2)显示 51.77 。 为什么会这样?enter image description here
答案 0 :(得分:0)
这与浮点数的二进制表示形式有关(以10为底的数字有时不精确地以2为底)。理由在this answer和this one中有更详尽的描述。从理论上讲:What causes floating point rounding errors?
要注意的是Python interpreter displays rounded floating point numbers。