在Python中钳制浮点数?

问题描述 投票:23回答:3

Python 2.6中是否为此提供了内置功能?

类似:

clamp(myValue, min, max)
python math clamp
3个回答
31
投票

没有这种功能,但是

max(min(my_value, max_value), min_value)

将解决问题。


42
投票

Numpy的clip函数将执行此操作。

clip

0
投票

我认为这个问题已经回答,但是如果有人需要,这是另一种DIY解决方案:

>>> import numpy
>>> numpy.clip(10,0,3)
3
>>> numpy.clip(-4,0,3)
0
>>> numpy.clip(2,0,3)
2

(比@Sven Marnach的回答快一点-即使在界限内也是如此。

© www.soinside.com 2019 - 2024. All rights reserved.