【发布时间】:2016-08-14 18:44:18
【问题描述】:
在 Python 3.5 中,我看到以下舍入行为:
>>> round(7.55, 1)
7.5 # expected to round up to 7.6
>>> round(7.45, 1)
7.5 # this is fine
也许我的直觉是不正确的,但我预计7.55 中的5 的百分之几向上舍入到7.6。标准的 Python 3 行为与我的数据期望不符;我显然需要超出标准round 方法的东西来实现这个目标。有没有办法得到这种行为?
【问题讨论】:
-
这绝对应该是精度的结果。
-
我认为使用 numpy 的 round() 方法可以帮助你实现你想要的行为。鉴于这里人们给出的答案是正确的,这是 Python 默认轮函数中的预期行为。
-
为什么关闭?这个问题不是重复的。我期待某些行为,而不是使用标准的
round函数。我在问如何获得这种行为。 -
它是重复的,但不是链接问题;链接的问题完全是关于 Python 在中途情况下的行为,但您给出的数字是 not 中途情况(因为通常你看到的不是你得到的二进制浮点的性质)。