Ответ 1
Нет такой функции, но
max(min(my_value, max_value), min_value)
сделает трюк.
Есть ли встроенная функция для этого в Python 2.6?
Что-то вроде:
clamp(myValue, min, max)
Нет такой функции, но
max(min(my_value, max_value), min_value)
сделает трюк.
Функция Numpy clip
сделает это.
>>> import numpy
>>> numpy.clip(10,0,3)
3
>>> numpy.clip(-4,0,3)
0
>>> numpy.clip(2,0,3)
2
Я думаю, что на вопрос есть ответ, но здесь есть альтернативное решение DIY, если это кому-то нужно:
def clip(value, lower, upper):
return lower if value < lower else upper if value > upper else value
(Чуть быстрее, чем ответ @Sven Marnach - даже когда в границах).