Nejlepší odpověď
Když aritmetická operace překročí limity typu proměnné, vyvolá se OverflowError. Dlouhá celá čísla přidělují více prostoru s růstem hodnot, takže nakonec zvýší MemoryError. Zpracování výjimek s plovoucí desetinnou čárkou však není standardizováno. Pravidelná celá čísla se podle potřeby převádějí na dlouhé hodnoty.
Příklad
Daný kód je přepsán tak, aby zachytil výjimku následujícím způsobem
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
Odpověď
Stejně jako většina ostatních programovacích jazyků, OverflowError v Pythonu naznačuje, že aritmetická operace překročila limity aktuálního běhového prostředí Pythonu. To je obvykle způsobeno nadměrně velkými hodnotami Float, protože příliš velké celočíselné hodnoty se rozhodnou místo toho zvýšit MemoryErrors.