Как представить бесконечное число в python? Независимо от того, какое число вы вводите в программу, ни одно из них не должно быть больше, чем это представление бесконечности.
В Python вы можете сделать это:
test = float("inf")
В Python 3.5 вы можете сделать:
import math
test = math.inf
А затем:
test > 1
test > 10000
test > x
всегда будет истинным. Если, конечно, как было указано, x не является также бесконечностью или "nan" ("не числом").
Кроме того (ТОЛЬКО для Python 2.x), в сравнении с Ellipsis
, float(inf)
меньше, например:
float('inf') < Ellipsis
вернет true.
Я не знаю, что именно вы делаете, но float("inf")
дает вам float Infinity, который больше любого другого числа.
Никто, кажется, уже упоминали об отрицательной бесконечностью явно, так что я думаю, я должен добавить его.
Для положительной бесконечности (просто для полноты картины):
math.inf
Для отрицательной бесконечности:
-math.inf
Другой, менее удобный способ сделать это - использовать класс Decimal
:
from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')
Есть бесконечность в библиотеке, библиотеки numpy: от импорта и NumPy инф. Чтобы получить отрицательная бесконечность, можно просто написать
-Ин`.
В Вместо python2.х был грязный хак, который служил этой цели (никогда не используйте его без крайней необходимости):
None < any integer < any string
Таким образом, проверьте я &Л; ''
имеет значение true
для любого целого "я".
Он был довольно устаревшим в питон3. Теперь такие сравнения заканчиваются
TypeError: unorderable types: str() < int()
Также, если вы используете SymPy вы можете использовать sympy.ОО` ``
из sympy импорт ОО ОО + 1 ОО оо - оо Нэн `` и т. д.
<п>в первую очередь типа поплавка('инф') - это флоат-хотя он может быть использован для целей сравнения, но это значительно замедлит сравнить против. Так что если вы сравниваете большой список число с плавающей точкой('инф') тогда будьте осторожны, чтобы выбрать его. Я не уверен насчет производительности "по математике.РСМД и".</п>