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

पायथन में एक अपवाद उठाना

आप उठाएँ कथन का उपयोग करके कई तरह से अपवाद उठा सकते हैं। रेज़ स्टेटमेंट का सामान्य सिंटैक्स इस प्रकार है।

सिंटैक्स

raise [Exception [, args [, traceback]]]

यहां, अपवाद अपवाद का प्रकार है (उदाहरण के लिए, NameError) और तर्क अपवाद तर्क के लिए एक मान है। तर्क वैकल्पिक है; यदि आपूर्ति नहीं की जाती है, तो अपवाद तर्क कोई नहीं है।

अंतिम तर्क, ट्रेसबैक, भी वैकल्पिक है (और अभ्यास में शायद ही कभी उपयोग किया जाता है), और यदि मौजूद है, तो अपवाद के लिए उपयोग की जाने वाली ट्रेसबैक ऑब्जेक्ट है।

उदाहरण

एक अपवाद एक स्ट्रिंग, एक वर्ग या वस्तु हो सकता है। पायथन कोर द्वारा उठाए गए अधिकांश अपवाद वर्ग हैं, एक तर्क के साथ जो वर्ग का एक उदाहरण है। नए अपवादों को परिभाषित करना काफी आसान है और इसे निम्नानुसार किया जा सकता है -

def functionName( level ):
   if level < 1:
      raise "Invalid level!", level
      # The code below to this would not be executed
      # if we raise the exception

नोट - एक अपवाद को पकड़ने के लिए, एक "छोड़कर" क्लॉज को उसी अपवाद को संदर्भित करना चाहिए जो या तो क्लास ऑब्जेक्ट या साधारण स्ट्रिंग फेंका गया हो। उदाहरण के लिए, उपरोक्त अपवाद को पकड़ने के लिए, हमें अपवाद खंड को इस प्रकार लिखना होगा -

try:
   Business Logic here...
except "Invalid level!":
   Exception handling here...
else:
   Rest of the code here...

  1. प्रोग्रामर के लिए मानक पायथन अपवाद सूची कहां है?

    मैं जानना चाहता हूं कि पाइथन में सभी मानक अपवाद क्या हैं। मुझे मानक पायथन अपवादों की सूची कहां मिल सकती है? प्रोग्रामर के लिए मानक पायथन अपवाद सूची . पर उपलब्ध है https://docs.python.org/3/library/exceptions.html

  1. सी एक्सटेंशन से पायथन अपवाद कैसे बढ़ाएं?

    उपरोक्त मॉड्यूल के लिए, हमें निम्नलिखित setup.py स्क्रिप्ट तैयार करने की आवश्यकता है - from distutils.core import setup, Extension setup(name='helloworld', version='1.0', \ ext_modules=[Extension('helloworld', ['hello.c'])]) अब, हम निम्न कमांड का उपयोग करते हैं, $ py

  1. रूबी में अपवाद

    एक अपवाद एक विशेष डेटा संरचना है जिसमें असाधारण . के बारे में जानकारी होती है आपके आवेदन में हो रही स्थिति। अपवाद तब भेजे जाते हैं जब आपका प्रोग्राम चलना जारी नहीं रख सकता क्योंकि यह नहीं जानता कि किसी विशिष्ट स्थिति से कैसे निपटा जाए। रूबी में, हम ऐसे सिग्नल भेजने को कहते हैं उठाना एक अपवाद। raise