Mi az OverflowError a Pythonban?


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.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük