अन्य उच्च-स्तरीय भाषाओं की तरह, अजगर में भी कुछ अपवाद हैं। जब कोई समस्या होती है, तो यह अपवाद उठाता है। विभिन्न प्रकार के अपवाद हैं जैसे ZeroDivisionError, AssertionError आदि। सभी अपवाद वर्ग बेसएक्सप्शन क्लास से प्राप्त होते हैं।
कोड अपवादों में बनाया जा सकता है, या हम इन अपवादों को कोड में भी बढ़ा सकते हैं। उपयोगकर्ता अपवाद . से अपना अपवाद स्वयं प्राप्त कर सकता है कक्षा, या अपवाद . के किसी अन्य बाल वर्ग से कक्षा।
बेसएक्सप्शन अन्य सभी अपवादों का आधार वर्ग है। उपयोगकर्ता परिभाषित वर्गों को सीधे इस वर्ग से प्राप्त नहीं किया जा सकता है, उपयोगकर्ता परिभाषित वर्ग को प्राप्त करने के लिए, हमें अपवाद वर्ग का उपयोग करने की आवश्यकता है।
पायथन अपवाद पदानुक्रम नीचे जैसा है।
- बेस अपवाद
- अपवाद
- अंकगणित त्रुटि
- FloatingPointError
- अतिप्रवाह त्रुटि
- ZeroDivisionError
- अभिकथन त्रुटि
- विशेषता त्रुटि
- बफ़र त्रुटि
- ईओएफत्रुटि
- आयात त्रुटि
- ModuleNotFoundError
- लुकअप त्रुटि
- इंडेक्स त्रुटि
- कुंजी त्रुटि
- स्मृति त्रुटि
- नामत्रुटि
- अनबाउंडलोकल एरर
- OSError
- ब्लॉकिंगआईओत्रुटि
- चाइल्डप्रोसेस त्रुटि
- कनेक्शन त्रुटि
- टूटी हुई पाइप त्रुटि
- कनेक्शन निरस्त त्रुटि
- ConnectionRefusedError
- ConnectionResetError
- FileExistsत्रुटि
- FileNotFoundError
- बाधित त्रुटि
- IsADDirectoryError
- NotADDirectoryत्रुटि
- अनुमति त्रुटि
- प्रक्रिया लुकअप त्रुटि
- समय समाप्त त्रुटि
- अंकगणित त्रुटि
- संदर्भ त्रुटि
- रनटाइम त्रुटि
- लागू नहीं की गईत्रुटि
- पुनरावर्ती त्रुटि
- स्टॉपइटरेशन
- StopAsyncIteration
- सिंटैक्स त्रुटि
- इंडेंटेशन त्रुटि
- टैब त्रुटि
- इंडेंटेशन त्रुटि
- सिस्टम त्रुटि
- लेखन त्रुटि
- ValueError
- यूनिकोड त्रुटि
- यूनिकोडडीकोडत्रुटि
- यूनिकोडएनकोडत्रुटि
- UnicodeTranslateError
- यूनिकोड त्रुटि
- चेतावनी
- बाइट्सचेतावनी
- बहिष्करण चेतावनी
- भविष्य की चेतावनी
- आयात चेतावनी
- लंबित अवमूल्यन चेतावनी
- संसाधन चेतावनी
- रनटाइम चेतावनी
- सिंटैक्स चेतावनी
- यूनिकोड चेतावनी
- उपयोगकर्ता चेतावनी
- जेनरेटर से बाहर निकलें
- कीबोर्ड इंटरप्ट
- सिस्टम से बाहर निकलें
समस्या - इस समस्या में कर्मचारियों का एक वर्ग है। शर्त यह है कि कर्मचारी की आयु 18 से अधिक होनी चाहिए।
हमें एक उपयोगकर्ता परिभाषित अपवाद वर्ग बनाना चाहिए, जो अपवाद वर्ग का एक बाल वर्ग है।
उदाहरण कोड
class LowAgeError(Exception): def __init__(self): pass def __str__(self): return 'The age must be greater than 18 years' class Employee: def __init__(self, name, age): self.name = name if age < 18: raise LowAgeError else: self.age = age def display(self): print('The name of the employee: ' + self.name + ', Age: ' + str(self.age) +' Years') try: e1 = Employee('Subhas', 25) e1.display() e2 = Employee('Anupam', 12) e1.display() except LowAgeError as e: print('Error Occurred: ' + str(e))
आउटपुट
The name of the employee: Subhas, Age: 25 Years Error OccurredThe age must be greater than 18 years