Как я могу представить бесконечное число в 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

Задайте значение с помощью кода выше