Beste Antwort
Wenn eine arithmetische Operation die Grenzen des Variablentyps überschreitet, wird ein OverflowError ausgelöst. Lange Ganzzahlen weisen mit steigenden Werten mehr Speicherplatz zu, sodass MemoryError ausgelöst wird. Die Behandlung von Gleitkomma-Ausnahmen ist jedoch nicht standardisiert. Normale Ganzzahlen werden nach Bedarf in lange Werte konvertiert.
Beispiel
Der angegebene Code wird neu geschrieben, um Ausnahmen wie folgt abzufangen
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
Antwort
Wie die meisten anderen Programmiersprachen zeigt der OverflowError in Python an, dass eine arithmetische Operation die Grenzen der aktuellen Python-Laufzeit überschritten hat. Dies ist normalerweise auf zu große Float-Werte zurückzuführen, da zu große Integer-Werte stattdessen MemoryErrors auslösen.