Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで可能な整数の最大値はいくつですか?


Python3のC/C ++ Longとは異なり、精度は無制限であり、明示的に定義された制限はありません。使用可能なアドレススペースの量が実際の制限と見なされます。

Python 2では、整数が制限を超えて大きくなると、整数は自動的にlongに切り替わります-

Python 2

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

Python 3

MaxintはPython3で削除されましたが、代わりにsys.maxsizeを使用できることがよくあります。

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

上記の出力から、Python 3ではintとlongが実際にマージされており、値はそれほど重要ではないことがわかります。

#Python 2.7

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

ただし、Python 3では、今回は範囲が広がるため、これよりも高い値を割り当てることができます。 sys.maxintはsys.maxsizeに置き換えられます。

#Python3.6の場合

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

最大および最小の整数、長整数、浮動小数点値

#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)

#Python 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



  1. Pythonでの文字列の最大長はどれくらいですか?

    文字列の最大長はプラットフォームに依存し、アドレス空間やRAMに依存します。 sysモジュールで定義されたmaxsize定数は、64ビットシステムで263-1を返します。 >>> import sys >>> sys.maxsize 9223372036854775807 プラットフォームのPy_ssize_tタイプでサポートされる最大の正の整数は、リスト、文字列、dict、およびその他の多くのコンテナが持つことができる最大サイズです。

  2. Pythonでのfloatの最大値はいくつですか?

    sysモジュールでは、float_infoと呼ばれる構造体シーケンス(名前付き要素のタプル)が定義されています。この構造では、要素maxは、表現可能な最大の有限浮動小数点数を返します。 >>> import sys >>> sys.float_info.max 1.7976931348623157e+308