Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬에서 정수의 가능한 최대값은 얼마입니까?

<시간/>

Python 3의 C/C++ Long과 달리 정밀도는 무제한이며 명시적으로 정의된 제한이 없습니다. 실제 제한으로 간주되는 사용 가능한 주소 공간의 양입니다.

파이썬 2에서 정수는 한계를 넘어 성장하면 자동으로 long으로 전환됩니다 -

파이썬 2

>>> import sys
>>> type(sys.maxint)
<type 'int'>
>>> type(sys.maxint + 1)
<type 'long'>

파이썬 3

Maxint는 python 3에서 제거되었지만 sys.maxsize가 종종 대신 사용될 수 있습니다.

>>> import sys
>>> type (sys.maxsize)
<class 'int'>
>>> type (sys.maxsize + 1)
<class 'int'>

위의 출력에서 ​​우리는 python 3에서 int와 long이 실제로 병합되고 값이 그렇게 중요하지 않다는 것을 알 수 있습니다.

#파이썬 2.7

>>> import sys
>>> print sys.maxint# Max Integer value
2147483647
>>> print -sys.maxint -1# Min. Ineteger value
-2147483648

그러나 파이썬 3에서는 이번에는 범위가 증가하므로 이보다 더 높은 값을 할당할 수 있습니다. sys.maxint는 sys.maxsize로 대체됩니다.

#파이썬 3.6에서

>>> import sys
>>> print(sys.maxsize)
2147483647

최대 및 최소 정수, long 및 float 값

#Python 2.7
import sys
print("Float value information: ",sys.float_info)
print("\n")
print("Long Integer value information: ",sys.long_info)
print("\n")
print("Maximum size of an integer: ",sys.maxsize)

출력

('Float value information: ', sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, 
min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, 
mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1))
('Long Integer value information: ', sys.long_info(bits_per_digit=30, sizeof_digit=4))
('Maximum size of an integer: ', 9223372036854775807L)

#파이썬 3.6

import sys
print("Float value information: ",sys.float_info)
print("\nInteger value information: ",sys.int_info)
print("\nMaximum size of an integer: ",sys.maxsize)

출력

Float value information: sys.float_info(max=1.7976931348623157e+308, max_exp=1024, 
max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, 
dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
Integer value information: sys.int_info(bits_per_digit=15, sizeof_digit=2)
Maximum size of an integer: 2147483647