Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में ओवरफ्लो एरर अपवाद कैसे पकड़ें?


जब अंकगणितीय संक्रिया चर प्रकार की सीमा से अधिक हो जाती है, तो एक अतिप्रवाह त्रुटि उत्पन्न हो जाती है। जैसे-जैसे मान बढ़ते हैं, लंबे पूर्णांक अधिक स्थान आवंटित करते हैं, इसलिए वे मेमोरी एरर को बढ़ाते हैं। हालांकि, फ़्लोटिंग पॉइंट अपवाद हैंडलिंग मानकीकृत नहीं है। नियमित पूर्णांकों को आवश्यकतानुसार लंबे मानों में बदल दिया जाता है।

उदाहरण

दिए गए कोड को अपवाद पकड़ने के लिए फिर से लिखा जाता है

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

आउटपुट

हम निम्न प्रकार से OutflowError को आउटपुट के रूप में प्राप्त करते हैं

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')


  1. कैसे अजगर में एक अपवाद के लिए तर्क पारित करने के लिए?

    अपवाद में एक तर्क हो सकता है, जो एक ऐसा मान है जो समस्या के बारे में अतिरिक्त जानकारी देता है। तर्क की सामग्री अपवाद से अपवाद में भिन्न होती है। आप अपवाद के तर्क को अपवाद खंड में एक चर की आपूर्ति करके निम्नानुसार कैप्चर करते हैं उदाहरण try: b=float(56+78/0) except Exception, Argument: print 'Thi

  1. पायथन में KeyError अपवाद कैसे पकड़ें?

    एक KeyError तब उठाया जाता है जब कोई मान किसी डिक्शनरी की कुंजी के रूप में नहीं मिलता है। अपवाद को पकड़ने और उसके प्रकार को खोजने के लिए दिए गए कोड को निम्नानुसार फिर से लिखा गया है। उदाहरण import sys try: s = {'a':5, 'b':7}['c'] except: print (sys.exc_info()) आउटपुट (<typ

  1. सूची समझ में एक पायथन अपवाद कैसे पकड़ें?

    पायथन में कोई अंतर्निहित फ़ंक्शन नहीं है जो आपको अपवाद को संभालने या अनदेखा करने देता है, इसलिए सूची समझ में सभी अपवादों को संभालना संभव नहीं है क्योंकि सूची समझ में एक या अधिक अभिव्यक्तियां होती हैं; केवल कथन अपवादों को पकड़/अनदेखा/संभाल सकते हैं। किसी फ़ंक्शन के लिए अपवाद-प्रवण उप-अभिव्यक्तियों क