approx
предназначен для использования при сравнении чисел типа с плавающей запятой с операторами ==
!=
, чтобы избежать запутанных примеров 0.1 + 0.2 != 0.3
приведенный пример следует интерпретировать так, как если бы пользователь хотел ответить
0.1000000001
больше 0.1
? ожидаемый ответ True
Теперь, если вы используете approx
, это будет означать False
, поскольку 0.1000000001 == approx(0.1)
(если вы использовали __le__
, это будет означать True
- поэтому они написали, что __le__
ожидается)
поэтому использование приблизительного значения - нечеткое число с большим или меньшим диапазоном не является интуитивно понятным - такие вопросы, как X больше, чем около 7, обычно не используются, и если вам нужны странные нечеткие диапазоны, вы должны указать это явно