需要以0.25的倍数四舍五入

Need to round in multiples of 0.25

我需要将货币金额四舍五入为 0.25、0.50、0.75,如果大于 0.75,则必须四舍五入到下一个整数。

怎么做?

示例需要四舍五入:

等等。

如果你想四舍五入到下一个最高的四分之一,你可以使用math.ceil()

>>> import math
>>> def quarter(x):
...     return math.ceil(x*4)/4
...
>>> quarter(25.91)
26.0
>>> quarter(25.21)
25.25
>>> quarter(25.44)
25.5

如果您想舍入到最近的四分之一而不是下一个最高的四分之一,只需将 math.ceil 替换为 round:

>>> def nearest_quarter(x):
...     return round(x*4)/4
...
>>> nearest_quarter(4.51)
4.5