파이썬에서 최대 플로트는 무엇입니까?


172

파이썬에서 최대 정수는을 호출하여 사용할 수 있다고 생각합니다 sys.maxint.

최대 float또는 long파이썬 은 무엇입니까 ?


sys.maxint파이썬 3 에는 없습니다 .
David McCorrie

답변:


273

들어하는 것은 float한 번 봐 가지고 sys.float_info:

>>> import sys
>>> sys.float_info
sys.floatinfo(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2
250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsil
on=2.2204460492503131e-16, radix=2, rounds=1)

구체적으로 sys.float_info.max:

>>> sys.float_info.max
1.7976931348623157e+308

그것이 충분히 크지 않으면 항상 양의 무한대가 있습니다 .

>>> infinity = float("inf")
>>> infinity
inf
>>> infinity / 10000
inf

long유형은 무제한 정밀도를 가지고 당신이 사용 가능한 메모리에 의해 제한 같아요, 그래서.


1
실제로 sys.maxint가 내 응용 프로그램에 충분하다는 것을 알았습니다.
ladyfafa

보인다 sys.float_infoV2.6에서 사용할 시작합니다. v2.3-5는 어떻습니까?
Aleksei Fedotov

1
참고 sys.float_info.min은 "최소 양의 정규화 된 부동 소수점" 으로 정의 됩니다 . 더 작은 비정상적인 값 이 가능합니다5e-324
Bob Stein

1
쿨, 둘 다 매우 유용합니다. 예를 들어 inf파이썬 float_info.max이 작동하지 않을 때 모든 것을 파이썬 으로 해결하고, 해결 방법으로 사용할 time.sleep(float("inf"))수 없습니다 :(
Dima Tisnek

2
@ladyfafa : sys.maxint를 다른 대답과도 의견을 참조, 파이썬 3에서 사라 stackoverflow.com/questions/13795758/...
요아킴 바그너

16

sys.maxint는 파이썬이 지원하는 가장 큰 정수가 아닙니다. 파이썬의 일반 정수 유형이 지원하는 가장 큰 정수입니다.


10
+1 중요합니다. Py3k에서는 거의 의미가 없습니다. 파이썬이 (투명하게!) 기본 데이터 유형을로 변경하는 시점 long입니다.
Katriel

6
@katrielalex : sys.maxint파이썬 3에서도 정의되지 않았으며, sys.maxsize파이썬 2에서도 선호 될 것입니다.
Scott Griffiths

14
@Scott Griffiths :별로. sys.maxsize(Python 2.6에 도입) sys.maxint두 가지입니다. 첫 번째는 컬렉션에 허용되는 최대 개체 수 (예 : 목록의 최대 크기, dict 등)를 제공하며 C size_t형식 의 서명 된 버전에 해당 합니다. 두 번째는 int유형이로 전환 되는 지점 long이며 C의 최대 값입니다 long. 일부 플랫폼에서는 두 값이 다릅니다 (예 : 64 비트 Windows의 경우 sys.maxsizeis 2**63-1and sys.maxintis) 2**31-1.
Mark Dickinson

@ Mark Dickinson : 수정 주셔서 감사합니다-Snow Leopard의 64 비트 Python을 사용하면 둘 다 다를 수 있다는 것을 깨닫지 못했습니다 2**63-1.
Scott Griffiths


7

당신이 사용하는 경우 NumPy와를 , 당신이 사용할 수있는 DTYPE ' float128을 '과의 최대 플로트 얻을 10E + 4931을

>>> np.finfo(np.float128)
finfo(resolution=1e-18, min=-1.18973149536e+4932, max=1.18973149536e+4932, dtype=float128)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.