जब अंकगणितीय ऑपरेशन वेरिएबल टाइप की सीमा को पार कर जाता है, तो OverflowError उठाया जाता है। लॉन्ग इंटीजर्स मान बढ़ने पर अधिक स्पेस आवंटित करते हैं, इसलिए वे अंत में MemoryError उठाते हैं। फ्लोटिंग पॉइंट एक्सेप्शन हैंडलिंग मानकीकृत नहीं है। रेगुलर इंटीजर्स आवश्यकतानुसार लॉन्ग मानों में परिवर्तित हो जाते हैं।
उदाहरण
दिए गए कोड को एक्सेप्शन पकड़ने के लिए निम्न प्रकार से फिर से लिखा गया है:
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)
आउटपुट
हमें निम्न OverflowError आउटपुट के रूप में मिलता है:
C:/Users/TutorialsPoint1/~scratch_1.py Floating point values: 0 3.0 1 9.0 2 81.0 3 6561.0 4 43046721.0 5 1.85302018885e+15 6 3.43368382029e+30 7 1.17901845777e+61 8 1.39008452377e+122 9 1.93233498323e+244 Overflowed after 1.93233498323e+244 (34, 'Result too large')