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

पायथन में एक्सेप्शन ऑब्जेक्ट है यह कैसे समझाएंगे?

हां, दिए गए कोड में 'err' एक एक्सेप्शन ऑब्जेक्ट है।

पायथन में सब कुछ एक ऑब्जेक्ट है। और हर ऑब्जेक्ट के एट्रिब्यूट्स और मेथड्स होते हैं। इसलिए एक्सेप्शन भी लिस्ट्स, फ़ंक्शन्स, टुपल्स आदि की तरह ऑब्जेक्ट्स हैं। इसलिए एक्सेप्शन के भी अन्य ऑब्जेक्ट्स की तरह एट्रिब्यूट्स होते हैं। इन एट्रिब्यूट्स को सेट और एक्सेस किया जा सकता है। बेस क्लास एक्सेप्शन है जिससे लगभग सभी अन्य एक्सेप्शन सबक्लास हैं। यदि e एक एक्सेप्शन ऑब्जेक्ट है, तो e.args और e.message इसके एट्रिब्यूट्स हैं।

वर्तमान पायथन इम्प्लीमेंटेशन में, एक्सेप्शन तीन भागों से बने होते हैं: टाइप, वैल्यू, और ट्रेसबैक। sys मॉड्यूल, वर्तमान एक्सेप्शन ऑब्जेक्ट को तीन वेरिएबल्स में वर्णित करता है: exc_type, exc_value, और exc_traceback।

sys.exc_info() फ़ंक्शन इन तीन एट्रिब्यूट्स का एक टुपल लौटाता है, और raise स्टेटमेंट में तीन-आर्गुमेंट फॉर्म होता है जो इन तीन भागों को स्वीकार करता है।

दिए गए कोड से निम्न आउटपुट मिलता है:

(, ValueError('could not convert string to int: Godzilla!',), )
  1. - पायथन में एक्सेप्शन को आर्गुमेंट कैसे पास करें?

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

  1. - पायथन में एक्सेप्शन कैसे उठाएं?

    हम raise कीवर्ड का उपयोग करके जबरन एक्सेप्शन उठा सकते हैं। raise मेथड को कॉल करने का सिंटैक्स यहां दिया गया है: raise [Exception [, args [, traceback]]] जहां, Exception एक्सेप्शन का नाम है; वैकल्पिक args एक्सेप्शन आर्गुमेंट का मान दर्शाता है। वैकल्पिक आर्गुमेंट, traceback, एक्सेप्शन के लिए उपयोग किय

  1. - आप कैसे टेस्ट करते हैं कि पायथन फंक्शन एक एक्सेप्शन फेंकता है?

    हम एक यूनिट टेस्ट लिखते हैं जो केवल तभी फेल होता है जब फंक्शन अपेक्षित एक्सेप्शन नहीं फेंकता। हम यह भी टेस्ट करते हैं कि क्या पायथन फंक्शन एक्सेप्शन फेंकता है। उदाहरण के लिए, पायथन की टाइप-सेफ्टी को टेस्ट करने के लिए पायथन शेल में पेस्ट किए गए नमूना कोड को देखें: उदाहरण import unittest class MyTestC