Откройте контекст
Выберите папку проекта и обозначьте нужные файлы или поведение.
Обновите логическое состояние по конечным нижнему и верхнему порогам гистерезиса. Сохраните состояние строго между порогами и проверьте равенство на каждой границе, отклоняя обратный порядок порогов, неконечные числа и нелогические состояния.
Выберите папку проекта и обозначьте нужные файлы или поведение.
Укажите входные данные, ожидаемый результат и границы, которые нужно сохранить.
Проверьте предлагаемые изменения и команды, прежде чем полагаться на результат.
Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.
from math import isfinite
def hysteresis(active, sample, low, high):
if type(active) is not bool:
raise ValueError("hysteresis.state")
if any(type(x) not in (int, float) or (type(x) is float and not isfinite(x))
for x in (sample, low, high)) or low >= high:
raise ValueError("hysteresis.thresholds")
if sample >= high:
return True
if sample <= low:
return False
return activeПример — отправная точка для реального проекта, а не утверждение, что сгенерированный код уже протестирован. Адаптируйте пути, зависимости и ожидаемое поведение к своему приложению.