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

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

SyntaxError तब होता है जब पार्सर को सोर्स कोड मिलता है जिसे वह नहीं समझता। यह मॉड्यूल इम्पोर्ट करते समय, exec इनवोक करते समय, या eval() कॉल करते समय हो सकता है। एक्सेप्शन के एट्रिब्यूट्स का उपयोग करके ठीक से पता लगाया जा सकता है कि इनपुट टेक्स्ट के किस हिस्से ने एक्सेप्शन का कारण बना।

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

उदाहरण

try:
    print(eval('six times seven'))
except SyntaxError as err:
    print('Syntax error %s (%s-%s): %s' % \
        (err.filename, err.lineno, err.offset, err.text))
    print(err)

आउटपुट

C:/Users/TutorialsPoint1/~.py
Syntax error  (1-9): six times seven
invalid syntax (, line 1)
  1. - पायथन में एक्सेप्शन को आर्गुमेंट कैसे पास करें?

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

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

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

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

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