होम·एरर संदेश

python · Python

संदेश

IndentationError: unexpected indent

इसका मतलब

यह पंक्ति पिछली से ज़्यादा भीतर है, और ऊपर कुछ ऐसा नहीं है जिसने block खोला हो और यह अतिरिक्त स्तर जायज़ ठहराए। आमतौर पर आपने ऐसा कोड चिपकाया जो अपने साथ शुरुआती space लाया, या if की पंक्ति मिटा दी और उसका भाग indent में ही छोड़ दिया। त्रुटि जिस पंक्ति की ओर इशारा करती है, उसका शुरुआती whitespace हटा दें; फ़र्क़ न दिखे तो उस पंक्ति को cat -A से छापिए, space और tab दिख जाएँगे।

सुधार

इसका एक-लाइन कमांड नहीं है। व्याख्या में लिखा है कि क्या देखना है।

कौन देता है
python
Python
18

Python का traceback उत्तर को दो हिस्सों में बाँटता है — अंतिम पंक्ति बताती है कि क्या ग़लत हुआ, और उसके ऊपर के frames बताते हैं कि कहाँ — इसलिए केवल अंतिम पंक्ति पढ़ने पर नाम मिलता है और जगह छूट जाती है; और NoneType तथा KeyError जैसी "मान नहीं है" वाली त्रुटियों में कारण लगभग हमेशा उस frame से ऊपर होता है जहाँ गिरा।

एरर संदेश कैसे पढ़ें

  • पहली पंक्ति से पढ़ें। जितना नीचे जाएँगे उतना वह औज़ार के भीतर की बात है; कारण आम तौर पर सबसे ऊपर लिखा होता है।
  • फ़ाइल का नाम और पंक्ति संख्या दिखे तो वहीं से शुरू करें — stack का सबसे ऊपरी frame नहीं, बल्कि वह सबसे ऊपरी पंक्ति जिसमें आपकी लिखी फ़ाइल का नाम हो।
  • संदेश को जैसा है वैसा खोजें, पर पहले अपने paths और variable नाम हटा दें — वही खोज को अटकाते हैं।
  • वही स्थिति औज़ार के हर संस्करण में अलग शब्दों में आती है। नतीजे बेमेल लगें तो संस्करण संख्या भी जोड़ें।
  • कोई सुधार चिपकाने से पहले देख लें कि वह क्या फेंक देगा। इनमें कुछ पलटे नहीं जा सकते।

अक्सर पूछे जाने वाले सवाल

Q. “IndentationError: unexpected indent” का क्या मतलब है?

यह पंक्ति पिछली से ज़्यादा भीतर है, और ऊपर कुछ ऐसा नहीं है जिसने block खोला हो और यह अतिरिक्त स्तर जायज़ ठहराए। आमतौर पर आपने ऐसा कोड चिपकाया जो अपने साथ शुरुआती space लाया, या if की पंक्ति मिटा दी और उसका भाग indent में ही छोड़ दिया। त्रुटि जिस पंक्ति की ओर इशारा करती है, उसका शुरुआती whitespace हटा दें; फ़र्क़ न दिखे तो उस पंक्ति को cat -A से छापिए, space और tab दिख जाएँगे।

Q. इसे कैसे ठीक करें?

एक-लाइन कमांड नहीं है। ऊपर की व्याख्या में लिखा है कि क्या देखना है।

Q. यह कौन-सा औज़ार देता है?

python। यह Python में आता है, और संदेश 3 शब्दों का है।

साथ आने वाले एरर