विषय - सूची[छिपाना][प्रदर्शन]
यदि आप बड़े कार्यक्रमों से निपट रहे हैं तो यह व्याख्यान महत्वपूर्ण होने जा रहा है।
आप अपवाद ब्लॉक के माध्यम से और पायथन में टिप्पणियों का उपयोग करके त्रुटियों को संभालना सीखेंगे।
अपवाद
हम सीखेंगे कि पायथन प्रोग्राम में त्रुटियों को कैसे संभालना है। आइए टर्मिनल से उपयोगकर्ता की आयु प्राप्त करने के लिए एक छोटा प्रोग्राम लिखकर शुरू करें।
age = int(input('Age'))
print(age)
चलो इसे चलाते हैं।
अब, इस प्रोग्राम के एग्जिट कोड को देखें। निकास कोड 0 का अर्थ है कि हमारा कार्यक्रम सफलतापूर्वक समाप्त हो गया और कोई त्रुटि नहीं थी। लेकिन क्या होगा अगर हम इस प्रोग्राम को एक बार और चलाते हैं और एक संख्यात्मक मान दर्ज करने के बजाय, हम एक स्ट्रिंग दर्ज करते हैं?
हमें उनके संदेश "आधार 10 के साथ int () के लिए अमान्य शाब्दिक" के साथ एक मान त्रुटि मिलती है, मूल रूप से यह संदेश हमें बता रहा है कि इस स्ट्रिंग "qwe" में एक वैध होम नंबर नहीं है जिसे पूर्णांक में परिवर्तित किया जा सकता है। अब, इस प्रोग्राम के एग्जिट कोड को देखें। एग्जिट कोड 1 का मतलब है कि हमारा एग्जिट कोड क्रैश हो गया है, इसलिए 0 का मतलब हमेशा सक्सेस होता है और 0 के अलावा कुछ भी क्रैश होता है। प्रोग्रामिंग में, हम इस प्रकार की त्रुटि को अपवाद के रूप में संदर्भित करते हैं।
एक अच्छे पायथन प्रोग्रामर के रूप में, आपको इस स्थिति की आशा करनी चाहिए। आप अपने पूरे प्रोग्राम को केवल इसलिए क्रैश नहीं होने देना चाहते क्योंकि उपयोगकर्ता ने एक अमान्य मान दर्ज किया है। इसलिए प्रोग्राम को क्रैश होने देने के बजाय आपको स्थिति को संभालना चाहिए और एक उचित त्रुटि संदेश प्रिंट करना चाहिए। यही मैं आपको इस व्याख्यान में दिखाने जा रहा हूं।
पायथन में, हमारे पास एक निर्माण है जिसे कहा जाता है try except
त्रुटि स्थितियों से निपटने के लिए उपयोग किया जाता है।
try:
age = int(input('Age'))
print(age)
कोड की ये दो पंक्तियाँ हमारे . का हिस्सा हैं try:
खंड मैथा। हम जोड़ेंगे except
हम जिस प्रकार की त्रुटि का अनुमान लगा रहे हैं, उसके साथ इसके बाद ब्लॉक करें।
except ValueError:
print('Invalid Value')
मान त्रुटि के मामले में यह अब स्ट्रिंग "अमान्य मान" लौटाएगा।
आइए पिछले प्रोग्राम को बदलकर एक अन्य प्रकार की त्रुटि की जाँच करें।
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ValueError:
print('Invalid Value')
अब, अगर हम इस प्रोग्राम को चलाते हैं और उम्र में '0' इनपुट करते हैं, तो एक संख्यात्मक मान। इसलिए, तकनीकी रूप से, हमें कोई अपवाद नहीं मिलना चाहिए।
चलो इसे चलाते हैं।
नज़र रखना। हमारा प्रोग्राम क्रैश हो गया और हमने "ज़ीरो डिवीजन एरर" किया क्योंकि हम किसी संख्या को 0 से विभाजित नहीं कर सकते हैं। एक बार फिर से बाहर निकलने के कोड को देखें। हम इस तरह की त्रुटि या इस तरह के अपवाद को ब्लॉक को छोड़कर नहीं पकड़ सके।
यह ब्लॉक को छोड़कर केवल टाइप वैल्यू एरर के अपवादों को पकड़ रहा है और हमें जीरो डिवीजन एरर को संभालने के लिए ब्लॉक को छोड़कर एक नए की आवश्यकता होगी। आइए तदनुसार कार्यक्रम को संशोधित करें।
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ZeroDivisionError:
print('Age cannot be 0')
except ValueError:
print('Invalid Value')
समस्या सुलझ गई है!
- वक्य रचना त्रुटि
- त्रुटि प्रकार
- नामत्रुटि
- अनुक्रमणिकात्रुटि
- मूल्य त्रुटि
- शून्य विभाजन त्रुटि
- विशेषता त्रुटि
- रनटाइम त्रुटि
- मुख्य त्रुटि
- मेमोरी एरर
- अभिकथन त्रुटि
- इंडेंटेशन एरर
- ईफोरर
- फ्लोटिंग पॉइंट एरर
- अतिप्रवाह त्रुटि
- तर्क त्रुटि
- सिस्टम में गड़बड़ी
- लागू की गई त्रुटि
- ओसरर
- आयोएरर
- संदर्भ त्रुटि
- यूनिकोड त्रुटि
- अंकगणित त्रुटि
- यूनिकोडडीकोडत्रुटि
- यूनिकोडेकोडेरोरर
- यूनिकोडअनुवादत्रुटि
- रनटाइम त्रुटियां
एक प्रोग्रामर के रूप में, आपको अपने प्रोग्राम के सभी अपवादों के बारे में पता होना चाहिए और आपको उसी के अनुसार उन्हें हैंडल करना चाहिए।
टिप्पणियाँ
अब, हम पायथन में टिप्पणियों के बारे में बात करने जा रहे हैं। हम पठनीयता में सुधार के लिए अपने कार्यक्रमों में नोट्स या टिप्पणियों को जोड़ने के लिए टिप्पणियों का उपयोग करते हैं और हमारे कोड को पढ़ने वाले किसी व्यक्ति को कुछ संदेश देते हैं।
कार्यक्रम में #चिह्न का उपयोग करके टिप्पणियाँ लिखी जा सकती हैं। # के बाद आप जो कुछ भी लिखते हैं वह पायथन कंपाइलर द्वारा अनदेखा कर दिया जाएगा और निष्पादित नहीं किया जाएगा। आप अलग-अलग पंक्तियों के साथ-साथ कोड की एक पंक्ति के बाद भी टिप्पणियां जोड़ सकते हैं।
इन टिप्पणियों के साथ, हम अपने कोड के बारे में कुछ समझा सकते हैं, हम उन्हें चीजों को ठीक करने या चीजों को साफ करने के लिए अनुस्मारक के रूप में उपयोग कर सकते हैं, या हम उनका उपयोग हमारे कोड को पढ़ने वाले अन्य डेवलपर्स के साथ संवाद करने के लिए कर सकते हैं या यह समझाने के लिए कि हमने यह कोड क्यों लिखा है एक निश्चित तरीका। टिप्पणियों का उपयोग करने के लिए ये अच्छे उपयोग के मामले हैं। हम कई पंक्तियों पर टिप्पणी भी कर सकते हैं। प्रत्येक पंक्ति एक नए # चिह्न से शुरू होनी चाहिए। अब टिप्पणियों का उपयोग करते समय आपको एक चीज से बचने की जरूरत है, यह बता रहा है कि कोड क्या करता है।
यहां एक खराब टिप्पणी का उदाहरण दिया गया है:
यह एक बुरी टिप्पणी है क्योंकि यह मुझे स्पष्ट बता रही है। यह मुझे बता रहा है कि अगली पंक्ति "पश्चिम में सनसेट" प्रिंट करने जा रही है। अब इस टिप्पणी के साथ समस्या यह है कि वर्बोज़ और दोहराव के अलावा यदि आप यहां आते हैं और पश्चिम को पूर्व में बदलते हैं, तो यह टिप्पणी पुरानी हो जाती है। इसलिए, हर बार जब हम अपना कोड अपडेट करते हैं तो हमें वापस आना होगा और संबंधित टिप्पणी को संशोधित करना होगा।
संक्षेप में, अपनी टिप्पणियों का उपयोग यह उत्तर देने के लिए करें कि क्या है के बजाय कैसे और क्यों है।
यहाँ एक अच्छी टिप्पणी का एक उदाहरण है:
पहली टिप्पणी में, मैं खुद को याद दिला रहा हूं कि कार्यक्रम को अंतिम रूप देने से पहले मुझे इस आय मूल्य को अपडेट करने की आवश्यकता है और दूसरा मूल्य अन्य डेवलपर्स को मेरा कोड पढ़ रहा है कि इस कार्यक्रम में सभी त्रुटियों को नियंत्रित नहीं किया गया है।
विशेष रूप से, आपको निरर्थक टिप्पणियों से बचना चाहिए और आपकी टिप्पणियों से आपके कोड में कुछ मूल्य जुड़ना चाहिए।
लपेटें!
अपवाद और टिप्पणियां प्रोग्रामिंग के दो पहलू हैं जिन्हें अक्सर अनदेखा कर दिया जाता है और उनके महत्व को आमतौर पर कम करके आंका जाता है।
अपने प्रोग्राम को क्रैश करना लगभग उतना ही बुरा है जितना कि जरूरत पड़ने पर अपने कोड पर टिप्पणी न करना। अगला व्याख्यान कक्षाओं और रचनाकारों पर केंद्रित होगा।
एक जवाब लिखें