Legjobb válasz
Ha egy aritmetikai művelet meghaladja a változó típusának határait, akkor egy OverflowError jelenik meg. A hosszú egész számok nagyobb teret osztanak ki az értékek növekedésével, így végül növelik a MemoryError funkciót. A lebegőpontos kivételkezelés azonban nem szabványosított. A szokásos egész számokat szükség szerint hosszú értékekké konvertáljuk.
Példa
A megadott kódot átírják a kivétel fogására az alábbiak szerint:
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
Válasz
A legtöbb programozási nyelvhez hasonlóan a Pythonban található OverflowError is azt jelzi, hogy egy aritmetikai művelet túllépte a Python jelenlegi futási idejének határait. Ennek oka általában a túlságosan nagy Float értékek, mivel a túl nagy Integer értékek inkább a MemoryErrors emelését választják.