PythonのOverflowErrorとは何ですか?


ベストアンサー

算術演算が変数タイプの制限を超えると、OverflowErrorが発生します。長い整数は、値が大きくなるにつれてより多くのスペースを割り当てるため、MemoryErrorが発生することになります。ただし、浮動小数点例外処理は標準化されていません。通常の整数は必要に応じて長い値に変換されます。

指定されたコードは、例外をキャッチするように次のように書き直されます

i=1

try:

f = 3.0**i

for i in range(100):

print i, f

f = f ** 2

except OverflowError as err:

print "Overflowed after ", f, err

回答

他のほとんどのプログラミング言語と同様に、PythonのOverflowErrorは、算術演算が現在のPythonランタイムの制限を超えたことを示します。これは通常、Float値が大きすぎることが原因です。整数値が大きすぎると、代わりにMemoryErrorsが発生するためです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です