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

पायथन में StandardError एक्सेप्शन कैसे पकड़ें?

Exception क्लास है, जो StopIteration, StandardError और Warning का बेस क्लास है। सभी स्टैंडर्ड एरर्स StandardError से प्राप्त होते हैं। कुछ स्टैंडर्ड एरर्स जैसे ArithmeticError, AttributeError, AssertionError बेस क्लास StandardError से प्राप्त होते हैं।

जब एट्रिब्यूट रेफरेंस या असाइनमेंट विफल होता है, तो AttributeError उठाया जाता है। उदाहरण के लिए, जब किसी ऐसे एट्रिब्यूट को रेफरेंस करने का प्रयास किया जाता है जो मौजूद नहीं है:

हम दिए गए कोड को फिर से लिखते हैं और एक्सेप्शन पकड़ते हैं और उसका प्रकार जानते हैं।

उदाहरण

import sys
try:
    class Foobar:
        def __init__(self):
            self.p = 0
    f = Foobar()
    print(f.p)
    print(f.q)
except Exception as e:
    print(e)
    print(sys.exc_type)
    print('This is an example of StandardError exception')

आउटपुट

0
Foobar instance has no attribute 'q'

This is an example of StandardError exception
  1. - पायथन में एक्सेप्शन को आर्गुमेंट कैसे पास करें?

    एक एक्सेप्शन का एक आर्गुमेंट हो सकता है, जो एक वैल्यू है जो समस्या के बारे में अतिरिक्त जानकारी देता है। आर्गुमेंट की सामग्री एक्सेप्शन से एक्सेप्शन में भिन्न होती है। आप except क्लॉज में एक वेरिएबल सप्लाई करके एक्सेप्शन के आर्गुमेंट को कैप्चर करते हैं जैसा कि नीचे दिखाया गया है: उदाहरण try: b =

  1. - पायथन में KeyError एक्सेप्शन कैसे पकड़ें?

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

  1. - पायथन में लिस्ट कॉम्प्रिहेंशन में एक्सेप्शन कैसे पकड़ें?

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