ベストアンサー
算術演算が変数タイプの制限を超えると、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が発生するためです。