как сравнить два бесконечно больших числа в python

#python #python-3.x

#python #python-3.x

Вопрос:

Я создаю алгоритм, в котором метрика может принимать 3 значения:

  • Бесконечный
  • Слишком большое, но не бесконечное
  • Некоторое число, являющееся результатом вычисления

Теперь math.inf обрабатывает бесконечное.

Результат третьего значения не имеет определенных границ. Но я хочу, чтобы второе значение всегда было меньше бесконечного и всегда больше третьего значения. Поэтому я не могу дать ему какое-то очень большое число, 999999999999999 поскольку всегда есть вероятность, что вычисление может превысить его.

То, что я ищу, — это еще одна константа, подобная Ellipsis Python 2.

Как я могу это сделать?

Ответ №1:

Вы можете попробовать sys.float_info.max :

 >>> import sys
>>> sys.float_info.max
1.7976931348623157e 308
 

Согласно документации, это «максимально представимое положительное конечное значение с плавающей точкой».