2024-05-17 02:38:52 发布
网友
在Python中,有没有一种方法可以只在小数部分大于一半的情况下将数字向上取整?round和{}将执行以下操作:
round
round(X.5) => X+1 math.ceil(X.5) => X+1
但是,我希望:
怎么做?在
我有2.7.13pythonx64
我找到了jornsharpe建议使用context的答案 我就是这么用的:
from decimal import * x =5.500000000000001 # it is the number wanted to round, however only takes 15 number after decimal for me ctx= Context(prec=1, rounding=ROUND_HALF_DOWN) y = ctx.create_decimal(x)
但是,我不知道它是否能和所有人一起工作。 也许还有更好的说法。在
math.ceil(x-0.5)
地图:
你可以这样做:
round(X - 0.00000000001)
您需要决定有多少个小数位是合适的,要记住浮动并不精确,因此例如100000000000000000.5不能被表示。在
我找到了jornsharpe建议使用context的答案 我就是这么用的:
但是,我不知道它是否能和所有人一起工作。 也许还有更好的说法。在
地图:
^{pr2}$你可以这样做:
您需要决定有多少个小数位是合适的,要记住浮动并不精确,因此例如100000000000000000.5不能被表示。在
相关问题 更多 >
编程相关推荐