[python] 파이썬에서 무한한 숫자를 어떻게 나타낼 수 있습니까?

파이썬에서 무한한 숫자를 어떻게 나타낼 수 있습니까? 프로그램에 입력 한 숫자에 관계없이이 숫자는 무한대 표시보다 커야합니다.



답변

파이썬에서는 다음을 수행 할 수 있습니다.

test = float("inf")

Python 3.5에서는 다음을 수행 할 수 있습니다.

import math
test = math.inf

그리고:

test > 1
test > 10000
test > x

항상 사실입니다. 물론, 지적되지 않은 한, x는 또한 무한대 또는 “nan”( “숫자가 아님”)이다.

또한에 비해, (파이썬 만 2.x으로) Ellipsis, float(inf)적은이다, 예를 들면 :

float('inf') < Ellipsis

사실을 반환합니다.


답변

Python 3.5부터 다음을 사용할 수 있습니다 math.inf.

>>> import math
>>> math.inf
inf


답변

음의 무한대에 대해 명시 적으로 언급 한 사람이 없으므로 추가해야한다고 생각합니다.

양의 무한대 (완전성을 위해) :

math.inf

음의 무한대 :

-math.inf


답변

나는 당신이 무엇을하고 있는지 정확히 알지 못하지만 float("inf")부동 수 무한대를 제공합니다.


답변

NumPy 라이브러리에는 무한대가 있습니다 from numpy import inf. 음의 무한대를 얻으려면 간단히 쓸 수 있습니다 -inf.


답변

덜 편리한 또 다른 방법은 Decimal클래스 를 사용하는 것입니다 .

from decimal import Decimal
pos_inf = Decimal('Infinity')
neg_inf = Decimal('-Infinity')


답변

python2.x에는 이러한 목적을 달성 한 더티 해킹이있었습니다 (절대적으로 필요한 경우가 아니면 절대 사용하지 마십시오).

None < any integer < any string

따라서 검사 i < ''True정수를 유지 합니다 i.

python3에서는 합리적으로 사용되지 않습니다. 이제 그러한 비교는

TypeError: unorderable types: str() < int()