Hvad er OverflowError i Python?


Bedste svar

Når en aritmetisk operation overskrider grænserne for den variable type, hæves en OverflowError. Lange heltal tildeler mere plads, når værdier vokser, så de ender med at hæve MemoryError. Håndtering af flydepunktsundtagelser er dog ikke standardiseret. Regelmæssige heltal konverteres til lange værdier efter behov.

Eksempel

Den givne kode omskrives for at fange undtagelsen som følger

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

Svar

Ligesom de fleste andre programmeringssprog angiver OverflowError i Python, at en aritmetisk handling har overskredet grænserne for den aktuelle Python-runtime. Dette skyldes typisk for store Float-værdier, da Heltalsværdier, der er for store, vælger at hæve MemoryErrors i stedet.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *