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

पायथन टैब त्रुटि:इंडेंटेशन समाधान में टैब और रिक्त स्थान का असंगत उपयोग

आप पायथन प्रोग्राम में रिक्त स्थान या टैब का उपयोग करके कोड को इंडेंट कर सकते हैं। यदि आप कोड के एक ही ब्लॉक में दोनों के संयोजन का उपयोग करने का प्रयास करते हैं, तो आपको "TabError:इंडेंटेशन में टैब और रिक्त स्थान का असंगत उपयोग" त्रुटि का सामना करना पड़ेगा।

इस गाइड में, हम चर्चा करते हैं कि इस त्रुटि का क्या अर्थ है और इसे क्यों उठाया गया है। हम इस त्रुटि के एक उदाहरण के माध्यम से चलेंगे ताकि आप यह पता लगा सकें कि इसे अपने कोड में कैसे हल किया जाए।

TabError:इंडेंटेशन में टैब और स्पेस का असंगत उपयोग

जबकि पायथन स्टाइल गाइड कहता है कि पायथन में कोडिंग करते समय रिक्त स्थान इंडेंटेशन का पसंदीदा तरीका है, आप रिक्त स्थान या टैब का उपयोग कर सकते हैं।

पायथन में इंडेंटेशन महत्वपूर्ण है क्योंकि कोड का एक ब्लॉक शुरू और खत्म होने के लिए भाषा घुंघराले कोष्ठक जैसे सिंटैक्स पर निर्भर नहीं करती है। इंडेंट पायथन को बताते हैं कि कोड की कौन सी पंक्तियाँ किस कोड ब्लॉक का हिस्सा हैं।

निम्नलिखित कार्यक्रम पर विचार करें:

<पूर्व>संख्याएं =[8, 7, 9, 8, 7] डीईएफ़ कैलकुलेट_एवरेज_एज ():औसत =योग (संख्या) / लेन (संख्या) प्रिंट (औसत)

इंडेंटेशन के बिना, यह जानना असंभव है कि कोड की कौन सी पंक्तियाँ गणना_एवरेज_एज फ़ंक्शन का हिस्सा होनी चाहिए और कोड की कौन सी पंक्तियाँ मुख्य कार्यक्रम का हिस्सा हैं।

आपको रिक्त स्थान या टैब का उपयोग करके रहना चाहिए। टैब और स्पेस को न मिलाएं। ऐसा करने से पायथन दुभाषिया भ्रमित हो जाएगा और "TabError:इंडेंटेशन में टैब और रिक्त स्थान का असंगत उपयोग" त्रुटि का कारण बनेगा।

एक उदाहरण परिदृश्य

हम एक प्रोग्राम बनाना चाहते हैं जो डोनट स्टोर पर की गई खरीदारी के कुल मूल्य की गणना करता है। शुरू करने के लिए, खरीदारी की एक सूची परिभाषित करें:

81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।

बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।

खरीदारी =[2.50, 4.90, 5.60, 2.40]

इसके बाद, हम एक फ़ंक्शन को परिभाषित करने जा रहे हैं जो कुल "खरीदारी" सूची की गणना करता है:

defगणना_total_purchases(खरीदारी):कुल =योग(खरीदारी) कुल वापसी

हमारा फ़ंक्शन एक पैरामीटर को स्वीकार करता है:खरीद की सूची जिसका कुल मूल्य हम गणना करना चाहते हैं। फ़ंक्शन उस सूची का कुल मान देता है जिसे हम पैरामीटर के रूप में निर्दिष्ट करते हैं।

हम "खरीद" सूची में कुल संख्याओं की गणना करने के लिए योग () विधि का उपयोग करते हैं।

यदि आप इस कोड स्निपेट को अपने टेक्स्ट एडिटर में कॉपी करते हैं, तो आप देख सकते हैं कि कोड की "रिटर्न टोटल" लाइन स्पेस का उपयोग करके इंडेंट की गई है, जबकि कोड की "टोटल =सम (परचेज)" लाइन इंडेंटेशन के लिए टैब का उपयोग करती है। यह एक महत्वपूर्ण अंतर है।

इसके बाद, हमारे फ़ंक्शन को कॉल करें और कंसोल पर लौटाए गए मान को प्रिंट करें:

total_purchases =calculate_total_purchases(purchases)print(total_purchases)

हमारा कोड calculate_total_purchases() . को कॉल करता है डोनट स्टोर पर की गई सभी खरीदारियों के कुल मूल्य की गणना करने के लिए कार्य करता है। फिर हम उस मान को कंसोल पर प्रिंट करते हैं। आइए अपना कोड चलाएं और देखें कि क्या होता है:

 फ़ाइल "test1.py", लाइन 5 कुल रिटर्न ^TabError:इंडेंटेशन में टैब और स्पेस का असंगत उपयोग

हमारा कोड एक त्रुटि देता है।

समाधान

हमने अपने कोड को इंडेंट करने के लिए रिक्त स्थान और टैब का उपयोग किया है। पायथन प्रोग्राम में, आपको इंडेंटेशन के इन दो तरीकों में से किसी एक का उपयोग करना चाहिए।

अपने कोड को ठीक करने के लिए, हम अपने फ़ंक्शन को बदलने जा रहे हैं ताकि हम केवल रिक्त स्थान का उपयोग करें:

defगणना_total_purchases(खरीदारी):कुल =योग(खरीदारी) कुल वापसी

हमारा कोड इंडेंटेशन के लिए 4 रिक्त स्थान का उपयोग करता है। आइए हमारे कार्यक्रम को हमारे नए इंडेंटेशन के साथ चलाएं:

15.4

हमारा कार्यक्रम डोनट खरीद के कुल मूल्य की सफलतापूर्वक गणना करता है।

आईडीएलई संपादक में, आप इन निर्देशों का पालन करके कोड के ब्लॉक के लिए इंडेंटेशन को हटा सकते हैं:

  • उस कोड को चुनें जिसका इंडेंटेशन आप हटाना चाहते हैं
  • "मेनू" पर क्लिक करें -> "प्रारूप" -> "क्षेत्र को निष्क्रिय करें"
  • उस इंडेंटेशन का प्रकार डालें जिसका आप उपयोग करना चाहते हैं

यह मानते हुए कि आप आईडीएलई संपादक का उपयोग कर रहे हैं, दस्तावेज़ में स्वरूपण को ठीक करने का यह एक सुविधाजनक तरीका है। Sublime Text जैसे कई अन्य संपादकों के पास फ़ाइल में इंडेंटेशन बदलने के अपने तरीके हैं।

निष्कर्ष

जब आप रिक्त स्थान और टैब दोनों का उपयोग करके कोड को इंडेंट करने का प्रयास करते हैं, तो पायथन "TabError:टैब और रिक्त स्थान का इंडेंटेशन में असंगत उपयोग" त्रुटि उत्पन्न होती है।

आप इस त्रुटि को किसी प्रोग्राम में या तो रिक्त स्थान या टैब पर चिपकाकर और किसी भी टैब या रिक्त स्थान को प्रतिस्थापित करके ठीक करते हैं जो इंडेंटेशन की आपकी पसंदीदा विधि का उपयोग नहीं करते हैं। अब आपके पास एक पेशेवर प्रोग्रामर की तरह इस त्रुटि को ठीक करने के लिए आवश्यक ज्ञान है!


  1. पायथन कोड की पैकेजिंग और प्रकाशन?

    पायथन पैकेज बनाने या प्रकाशित करने का एक बहुत ही सरल तरीका प्रदान करता है। पायथन में पैकेज प्रबंधन विभिन्न उपकरणों के माध्यम से उपलब्ध है- पिप- यह पसंदीदा विकल्पों में से एक बना हुआ है क्योंकि यह ऑपरेटिंग सिस्टम में सॉफ़्टवेयर पैकेज के किसी भी मैन्युअल इंस्टॉल और अपडेट को वस्तुतः समाप्त कर देता

  1. फिक्स:इंडेंटेशन एरर पायथन

    पायथन एक उभरती हुई प्रोग्रामिंग भाषा है जिसे पहली बार 1991 में जारी किया गया था। यह भाषा अपने बड़े व्यापक पुस्तकालय के लिए जानी जाती है और कार्यात्मक, अनिवार्य, प्रक्रियात्मक और वस्तु-उन्मुख जैसे कई प्रोग्रामिंग प्रतिमानों का समर्थन करती है। इंडेंटेशन एरर:इंडेंटेड ब्लॉक की उम्मीद सभी प्रकार के उप

  1. पायथन लूप्स - जानें कि पायथन में लूप्स के लिए और जबकि उपयोग कैसे करें

    लूप्स किसी भी प्रोग्रामिंग या स्क्रिप्टिंग भाषा की एक अनिवार्य विशेषता है। किसी कार्य को कई बार निष्पादित करने की क्षमता होना किसी भी भाषा के लिए मौलिक है। पायथन में, लूपिंग को for . के उपयोग के माध्यम से प्राप्त किया जाता है और while लूप और इस लेख में हम देखते हैं कि उदाहरणों के साथ उनका उपयोग कैस