Сравнение значений в pythone
Не срабатывает выполнение условия, хотя оно равно True.
Начальный код достаточно объемный. На скрине привел его часть с рабочими значениями.
Необходимо сравнить две переменные stop_loss_new и stop_loss_old.
Типы и значения приведены в окне отладчика.
Так же приведён результат сравнения переменных, как видно он True. Однако в условии if логическое выражение не возвращает True, так как дальше не выводится «Check point».
Возможно, это связано с типами переменных, тогда не понятно почему выше на печать выводит True.
Ответы (1 шт):
if statement == True — никогда так не пишите ;) Во-первых, это эквивалентно if statement. И, во-вторых, могут произойти проблемы с приоритетом операций. В вашем случае (stop_loss_new > stop_loss_old) == True вернёт True, а stop_loss_new > stop_loss_old == True вернёт False.
Вам просто нужно написать: if stop_loss_new > stop_loss_old.
