पायथन एक उभरती हुई प्रोग्रामिंग भाषा है जिसे पहली बार 1991 में जारी किया गया था। यह भाषा अपने बड़े व्यापक पुस्तकालय के लिए जानी जाती है और कार्यात्मक, अनिवार्य, प्रक्रियात्मक और वस्तु-उन्मुख जैसे कई प्रोग्रामिंग प्रतिमानों का समर्थन करती है।
'इंडेंटेशन एरर:इंडेंटेड ब्लॉक की उम्मीद ' सभी प्रकार के उपयोगकर्ताओं के लिए होता है; चाहे वे नौसिखिया हों या अनुभवी। चूंकि पायथन अपने सभी कोड को सही व्हाइटस्पेस द्वारा व्यवस्थित करता है, यदि आपके पास खराब इंडेंटेशन है, तो कोड संकलित नहीं होगा और आपको एक त्रुटि संदेश वापस कर दिया जाएगा।
PEP8 में अपनाई गई परंपराओं के अनुसार, जहां आवश्यक हो, वहां चार खाली स्थान होने चाहिए। प्रत्येक प्रोग्रामर के लिए उचित इंडेंटेशन का उपयोग करना आदर्श है ताकि कोड पठनीयता में सुधार हो।
पायथन में इंडेंटेशन त्रुटि का क्या कारण है?
जैसा कि पहले उल्लेख किया गया है, यह त्रुटि मुख्य रूप से इसलिए होती है क्योंकि आपके कोड में स्थान या टैब त्रुटियां हैं। चूंकि पायथन प्रक्रियात्मक भाषा का उपयोग करता है, आप इस त्रुटि का अनुभव कर सकते हैं यदि आपने टैब/स्पेस को सही ढंग से नहीं रखा है। प्रोग्राम ठीक से चल सकता है लेकिन अगर दुभाषिया को यह त्रुटि मिलती है, तो बीच में त्रुटि संदेश सामने आएगा। त्रुटि के कुछ कारण हैं:
- आप रिक्त स्थान और टैब दोनों का उपयोग कर रहे हैं आपके कोड में। यदि दोनों का परस्पर उपयोग किया जाता है, तो दुभाषिया यह निर्धारित नहीं कर पाएगा कि किस वस्तु का उपयोग करना है।
- आपने कुछ इंडेंट लगाया है गलत . यदि इंडेंटेशन अभ्यास का पालन नहीं किया जाता है, तो आपको यह त्रुटि अनिवार्य रूप से होगी।
- आप यौगिक कथन को इंडेंट करना भूल गए हैं जैसे 'अगर', 'के लिए', 'जबकि' आदि।
- आप उपयोगकर्ता द्वारा परिभाषित कार्यों या कक्षाओं को इंडेंट करना भूल गए हैं ।
समाधान 1:गलत सफेद रिक्त स्थान/टैब की जांच करना
इस समस्या का कोई तत्काल समाधान नहीं है। चूंकि कोड आपका है, आपको प्रत्येक पंक्ति से गुजरना होगा और देखना होगा कि आपने कहां गलती की है। संरचना के संबंध में कोड में कई ब्लॉक हैं। यदि कोई 'अगर' कथन है, तो उसके बाद आने वाले कोड के लिए एक इंडेंटेशन होना चाहिए।
ऊपर दिए गए आरेख को देखें। देखें कि एक विशिष्ट ब्लॉक के लिए इंडेंटेशन पूरे कोड में समान रहता है, भले ही बीच में एक नया ब्लॉक पेश किया गया हो। सुनिश्चित करें कि आपका इंडेंटेशन सुसंगत है। यदि आप रिक्त स्थान का उपयोग कर रहे हैं, तो हमेशा रिक्त स्थान का उपयोग करें और यदि आप टैब का उपयोग कर रहे हैं, तो हमेशा टैब का उपयोग करें। दो के मिलने से परेशानी होगी।
ऊपर के उदाहरण में सही इंडेंटेशन दिखाया गया है। शुरुआत के लिए 'फॉर' लूप देखें। सब कुछ अंदर 'फॉर' लूप को इंडेंट किया जाना चाहिए। 'फॉर' लूप के अंदर, हमारे पास 'if' स्टेटमेंट होता है। 'if' स्टेटमेंट के अंदर, सब कुछ आगे होना चाहिए इंडेंट।
त्रुटि लॉग की जाँच करके और जहाँ से त्रुटि उत्पन्न हुई है, उस रेखा को देखकर आप आसानी से जाँच सकते हैं कि इंडेंटेशन त्रुटि कहाँ हुई।
समाधान 2:संपादक में टैब/स्पेस प्रतीकों को सक्षम करना
यदि आपको सभी प्रोग्रामरों की तरह 'अनुमान' द्वारा अपना कोड इंडेंट करने में कठिन समय हो रहा है, तो आप अपने आईडीई या कोड संपादक में टैब/स्पेस के प्रतीकों को सक्षम कर सकते हैं। यह विकल्प आपके कोड में छोटे 'डॉट्स' को सक्षम करेगा जहां प्रत्येक बिंदु एक स्थान या टैब का प्रतिनिधित्व करता है। आप इसका उपयोग कोड को अधिक सही ढंग से इंडेंट करने के लिए कर सकते हैं और सुनिश्चित कर सकते हैं कि कोई अतिरिक्त इंडेंट नहीं है या कुछ गायब है।
इस उदाहरण में, हम Notepad++ लेंगे और देखेंगे कि आप प्रतीकों को कैसे सक्षम कर सकते हैं। यदि आप कोड संपादन के लिए किसी अन्य सॉफ़्टवेयर का उपयोग कर रहे हैं, तो आप इसके लिए विशिष्ट सेटिंग को सक्षम कर सकते हैं।
- दबाएं देखें> प्रतीक दिखाएं> व्हाइटस्पेस और टैब दिखाएं
- अब विकल्प सक्षम है। आप इंडेंट गाइड . को भी सक्षम कर सकते हैं ताकि चीजें आपके लिए आसान हो जाएं।
ऊपर दिए गए उदाहरण की जाँच करें। प्रत्येक वर्ग के बाद लागू इंडेंटेशन देखें। प्रत्येक स्थान को एक बिंदु द्वारा दर्शाया जाता है। अपने कोड पर गलत इंडेंटेशन में बदलाव करने के बाद, इसे फिर से चलाएँ और देखें कि क्या इससे समस्या हल हो जाती है।