Pythonic способ заменить значения списка с верхней и нижней границей (зажим, ограничение, порог)?

Я хочу заменить планировщиков из списка. Поэтому я определяю верхнюю и нижнюю границу. Теперь каждое значение вышеupper_bound и подlower_bound заменяется связанным значением. Мой подход состоял в том, чтобы сделать это в два этапа, используя массив numpy.

Теперь мне интересно, возможно ли сделать это за один шаг, так как, я думаю, это может улучшить производительность и удобочитаемость.

Есть ли более короткий способ сделать это?

import numpy as np

lowerBound, upperBound = 3, 7

arr = np.array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

arr[arr > upperBound] = upperBound
arr[arr < lowerBound] = lowerBound

# [3 3 3 3 4 5 6 7 7 7]
print(arr)

Ответы на вопрос(2)

Ваш ответ на вопрос