如何使用“步进”参数创建向下取整函数

4 投票
3 回答
636 浏览
提问于 2025-04-16 02:43

我想创建一个叫做 floor(number, step) 的函数,它的作用是:

floor(0, 1) = 0
floor(1, 1) = 1
floor(1, 2) = 0
floor(5, 2) = 4
floor(.8, .25) = .75

有没有更好的方法来实现这样的功能呢?

谢谢。

3 个回答

1

下面的代码大概可以解决这个问题。

def stepped_floor (n, step=1):
    return n - (n % step)
2

你想要的其实和这个差不多:

step * (x // step)

对吧?

6

你可以这样做:floor( val / step ) * step

撰写回答