Подтвердить что ты не робот

Как мне ввести литерал бесконечности бесконечности с плавающей запятой в python

Как мне ввести литерал бесконечности бесконечности в python?

Я слышал

 inf = float('inf')

не переносится. Таким образом, я рекомендовал следующее:

 inf = 1e400

Является ли это стандартным или переносным? Какая практика?

4b9b3361

Ответ 1

В python 2.6 он переносится, если процессор поддерживает его

Функция float() теперь включает string nan в IEEE 754 Not A Числовое значение и + inf и -inf в положительной или отрицательной бесконечности. Эта работает на любой платформе с IEEE 754 семантика.

Ответ 2

float('inf') не переносится, как и не переносится обратно на Python 2.5, когда вывод строки зависит от платформы. Начиная с версии 2.6 и далее float('inf') гарантируется работа на платформах соответствия IEEE-754 (ссылка: http://www.python.org/dev/peps/pep-0754/).

(И эта рекомендация находится в диапазоне 1e30000, а не только 1e400.)

Ответ 3

Возможно, вы могли бы сделать что-то вроде этого

try:
    inf = float('inf')
except:  # check for a particular exception here?
    inf = 1e30000