Как я могу представить бесконечное число в python? Независимо от того, какой номер вы вводите в программу, ни одно число не должно быть больше, чем это представление бесконечности.
Как я могу представить бесконечное число в Python?
Ответ 1
В Python вы можете сделать:
test = float("inf")
В Python 3.5 вы можете:
import math
test = math.inf
И затем:
test > 1
test > 10000
test > x
Всегда будет правдой. Если, конечно, как указано, x также бесконечно или "нан" ( "не число" ).
Дополнительно (только для Python 2.x), при сравнении с Ellipsis
, float(inf)
меньше, например:
float('inf') < Ellipsis
вернет true.
Ответ 2
С Python 3.5 вы можете использовать math.inf
:
>>> import math
>>> math.inf
inf
Ответ 3
Я точно не знаю, что вы делаете, но float("inf")
дает вам float Infinity, который больше любого другого числа.
Ответ 4
Другой, менее удобный способ сделать это - использовать Decimal
класс:
from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')
Ответ 5
В python2.x был грязный хак, который служил этой цели (НИКОГДА не используйте его, если это абсолютно необходимо):
None < any integer < any string
Таким образом, проверка i < ''
содержит True
для любого целого числа i
.
В python3 он был устаревшим. Теперь такие сравнения заканчиваются
TypeError: unorderable types: str() < int()
Ответ 6
В библиотеке NumPy существует бесконечность: from numpy import inf
. Чтобы получить отрицательную бесконечность, можно просто написать -inf
.
Ответ 7
Никто, кажется, не упоминал об отрицательной бесконечности явно, поэтому я думаю, что должен добавить его.
Для положительной бесконечности (только для полноты):
math.inf
Для отрицательной бесконечности:
-math.inf
Ответ 8
прежде всего тип float ('inf') является float, хотя его можно использовать для целей сравнения, но он значительно медленнее сравнивать с ним. Поэтому, если вы сравниваете большой список чисел с float ('inf'), будьте осторожны, чтобы выбрать его. Я не уверен в производительности "math.inf".
Ответ 9
value = 0x7fffffff
Задайте значение с помощью кода выше