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

पायथन इंडेंटेशन त्रुटि:अनपेक्षित इंडेंट समाधान

IndentationErrors दो उद्देश्यों की पूर्ति करते हैं:वे आपके कोड को अधिक पठनीय बनाने में मदद करते हैं और सुनिश्चित करते हैं कि पायथन दुभाषिया आपके कोड को सही ढंग से समझता है। यदि आप एक अतिरिक्त स्थान या टैब में जोड़ते हैं जहां एक की आवश्यकता नहीं है, तो आपको "इंडेंटेशन त्रुटि:अनपेक्षित इंडेंट" त्रुटि का सामना करना पड़ेगा।

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

IndentationError:अनपेक्षित इंडेंट

एक इंडेंट रिक्त स्थान या टैब की एक विशिष्ट संख्या है जो दर्शाता है कि कोड की एक पंक्ति एक विशेष कोड ब्लॉक का हिस्सा है। निम्नलिखित कार्यक्रम पर विचार करें:

def hello_world():
	print("Hello, world!")

हमने एक ही फ़ंक्शन को परिभाषित किया है:hello_world() . इस फ़ंक्शन में एक प्रिंट स्टेटमेंट होता है। पायथन को इंगित करने के लिए कोड की यह पंक्ति हमारे फ़ंक्शन का हिस्सा है, हमने इसे इंडेंट किया है।

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

  • एक "अगर ... और" कथन
  • एक "कोशिश करें ... को छोड़कर" कथन
  • एक "फॉर" लूप
  • एक "फ़ंक्शन" कथन

यदि यह किसी विशेष कथन में प्रकट होता है तो पायथन कोड को लगातार इंडेंट किया जाना चाहिए। पायथन इंडेंटेशन को सख्ती से लागू करता है।

जावास्क्रिप्ट जैसी कुछ प्रोग्रामिंग भाषाएं इंडेंटेशन को सख्ती से लागू नहीं करती हैं क्योंकि वे कोड के ब्लॉक को दर्शाने के लिए घुंघराले ब्रेसिज़ का उपयोग करती हैं। पायथन में यह सुविधा नहीं है, इसलिए भाषा काफी हद तक इंडेंटेशन पर निर्भर करती है।

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

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

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

आपके सामने आने वाली अन्य इंडेंटेशन त्रुटियां हैं:

  • अनइंडेंट किसी अन्य इंडेंटेशन स्तर से मेल नहीं खाता
  • एक इंडेंटेड ब्लॉक की उम्मीद है

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

हम एक ऐसा प्रोग्राम बनाने जा रहे हैं जो एक उपयोगकर्ता द्वारा की गई खरीदारी की सूची के माध्यम से लूप करता है और उन सभी को प्रिंट करता है जो कंसोल पर $ 25.00 से अधिक हैं।

शुरू करने के लिए, खरीदारी की एक सूची परिभाषित करें:

 purchases = [25.50, 29.90, 2.40, 57.60, 24.90, 1.55]

इसके बाद, हम अपनी खरीद की सूची के माध्यम से लूप के लिए एक फ़ंक्शन को परिभाषित करते हैं और कंसोल पर $ 25 से अधिक मूल्य के लोगों को प्रिंट करते हैं:

def show_high_purchases(purchases):
	   for p in purchases:
		        if p > 25.00:
			            print("Purchase: ")
				                print(p)

show_high_purchases() फ़ंक्शन एक तर्क को स्वीकार करता है:खरीदारी की सूची जिसके माध्यम से फ़ंक्शन खोज करेगा। फ़ंक्शन इस सूची के माध्यम से पुनरावृति करता है और if . का उपयोग करता है यह जाँचने के लिए विवरण कि क्या प्रत्येक खरीद $25.00 से अधिक मूल्य की है।

यदि कोई खरीदारी $25.00 से अधिक है, तो कथन Purchase: कंसोल पर प्रिंट किया जाता है। फिर, उस खरीद की कीमत कंसोल पर मुद्रित होती है। नहीं तो कुछ नहीं होता।

इससे पहले कि हम अपना कोड चलाएं, हमारे फ़ंक्शन को कॉल करें और एक पैरामीटर के रूप में हमारी खरीद की सूची पास करें:

show_high_purchases(purchases)

आइए अपना कोड चलाएं और देखें कि क्या होता है:

  File "main.py", line 7
	print(p)
	^
IndentationError: unexpected indent

हमारा कोड सफलतापूर्वक नहीं चलता है।

समाधान

किसी भी पायथन त्रुटि के साथ, हमें यह देखने के लिए पूर्ण त्रुटि संदेश पढ़ना चाहिए कि क्या हो रहा है। समस्या लाइन 7 पर प्रतीत होती है, जहां हम खरीदारी के मूल्य को प्रिंट करते हैं।

	if p > 25.00:
			print("Purchase: ")
				    print(p)

हमने संयोग से दूसरा print() इंडेंट कर दिया है बयान। यह एक त्रुटि का कारण बनता है क्योंकि हमारा दूसरा print() स्टेटमेंट कोड के दूसरे ब्लॉक का हिस्सा नहीं है। यह अभी भी हमारे if . का हिस्सा है बयान।

इस त्रुटि को हल करने के लिए, हमें यह सुनिश्चित करने की आवश्यकता है कि हम अपने सभी print() . को लगातार इंडेंट करें बयान:

	if p > 25.00:
			print("Purchase: ")
				    print(p)

दोनों print() कथनों को समान स्तर के इंडेंटेशन का उपयोग करना चाहिए क्योंकि वे उसी if . का हिस्सा हैं बयान। हमने यह संशोधन ऊपर किया है।

आइए अपना कोड चलाने का प्रयास करें:

Purchase:
25.5
Purchase:
29.9
Purchase:
57.6

हमारा कोड कंसोल पर $25.00 से अधिक मूल्य की सभी खरीदारियों को सफलतापूर्वक प्रिंट करता है।

निष्कर्ष

"इंडेंटेशन एरर:अनपेक्षित इंडेंट" तब उठाया जाता है जब आप कोड की एक पंक्ति को कई बार इंडेंट करते हैं। इस त्रुटि को हल करने के लिए, सुनिश्चित करें कि आपका सभी कोड लगातार इंडेंटेशन का उपयोग करता है और कोई अनावश्यक इंडेंट नहीं है।

अब आप पाइथन विशेषज्ञ की तरह इस त्रुटि को ठीक करने के लिए तैयार हैं!


  1. pyqrcode मॉड्यूल का उपयोग करके पायथन क्यूआर कोड उत्पन्न करता है?

    एक क्यूआर कोड में एक सफेद पृष्ठभूमि पर एक वर्ग ग्रिड में व्यवस्थित काले वर्ग होते हैं, जिन्हें एक इमेजिंग डिवाइस जैसे कैमरा द्वारा पढ़ा जा सकता है। यह कई वाणिज्यिक ट्रैकिंग अनुप्रयोगों और मोबाइल फोन उपयोगकर्ताओं के उद्देश्य से विभिन्न अनुप्रयोगों के लिए भुगतान और वेबसाइट लॉगिन आदि के लिए व्यापक रूप

  1. Google कोलैबोरेटरी पर पायथन कोड कैसे चलाएं?

    Google Colaboratory एक मुफ़्त Jupyter नोटबुक वातावरण है जिसमें किसी सेटअप की आवश्यकता नहीं होती है और यह पूरी तरह से क्लाउड में चलता है। यह Google क्लाउड में होस्ट किया गया है और Google द्वारा अजगर कोडर्स के लाभ के लिए बनाए रखा गया है जो क्लाउड वातावरण का उपयोग करके पायथन स्क्रिप्ट को चलाना और परीक्

  1. पायथन कोड के लिए अनुकूलन युक्तियाँ?

    हालांकि हम सभी जानते हैं कि अजगर अन्य अनुपालन वाली भाषाओं की तरह तेज या कुशल नहीं है। हालाँकि, कई बड़ी कंपनियाँ हैं जो हमें दिखाती हैं कि पायथन कोड बहुत बड़े कार्यभार को संभाल सकता है जो दर्शाता है कि यह इतना धीमा नहीं है। इस खंड में, हम कुछ युक्तियों को देखने जा रहे हैं जिन्हें ध्यान में रखना चाहिए