الإصلاح: خطأ المسافة البادئة في بايثون



جرب أداة القضاء على المشاكل

Python هي لغة برمجة ناشئة تم إصدارها لأول مرة في عام 1991. تشتهر اللغة بمكتبتها الشاملة الكبيرة وتدعم العديد من نماذج البرمجة مثل الوظيفية والإلزامية والإجرائية والموجهة للكائنات.



خطأ المسافة البادئة بيثون أثناء الترميز

خطأ المسافة البادئة في بايثون



ال ' خطأ المسافة البادئة: من المتوقع وجود مسافة بادئة 'يحدث لجميع أنواع المستخدمين ؛ سواء كانوا مبتدئين أو من ذوي الخبرة. نظرًا لأن Python ترتب كل أكوادها من خلال مسافات بيضاء صحيحة ، إذا كان لديك مسافة بادئة سيئة ، فلن يتم تجميع الشفرة وستظهر لك رسالة خطأ.



وفقًا للاتفاقيات المتبعة في PEP8 ، يجب أن تكون هناك أربع مسافات بيضاء عند الاقتضاء. إنه مثالي لكل مبرمج لاستخدام المسافات البادئة المناسبة حتى تتحسن قابلية قراءة الكود.

ما الذي يسبب خطأ المسافة البادئة في بايثون؟

كما ذكرنا سابقًا ، يحدث هذا الخطأ في المقام الأول بسبب وجود أخطاء في المسافة أو علامات التبويب في التعليمات البرمجية الخاصة بك. نظرًا لأن Python تستخدم لغة إجرائية ، فقد تواجه هذا الخطأ إذا لم تضع علامات التبويب / المسافات بشكل صحيح. قد يعمل البرنامج بشكل صحيح ولكن إذا وجد المترجم هذا الخطأ ، فستظهر رسالة الخطأ في المنتصف. بعض أسباب الخطأ هي:

  • انت تستخدم كل من المسافات وعلامات التبويب في التعليمات البرمجية الخاصة بك. إذا تم استخدام كلاهما بالتبادل ، فلن يتمكن المترجم الفوري من تحديد العنصر الذي يجب استخدامه.
  • لقد وضعت بعض المسافة البادئة خطأ . إذا لم يتم اتباع ممارسة المسافة البادئة ، فسيكون لديك هذا الخطأ حتماً.
  • لقد نسيت وضع مسافة بادئة لملف بيانات مركبة مثل 'if' و 'for' و 'while' وما إلى ذلك.
  • لقد نسيت المسافة البادئة وظائف أو فئات يحددها المستخدم .

الحل 1: التحقق من وجود مسافات / علامات تبويب خاطئة

لا يوجد حل فوري لهذه المشكلة. نظرًا لأن الشفرة ملكك ، يجب عليك المرور عبر كل سطر ومعرفة المكان الذي ارتكبت فيه الخطأ. هناك العديد من الكتل في التعليمات البرمجية فيما يتعلق بالبنية. إذا كانت هناك عبارة 'If' ، فيجب أن تكون هناك مسافة بادئة للرمز الذي يتبعها.



هيكل كتلة تصور المسافة البادئة في بايثون

هيكل كتلة تصور المسافة البادئة

تحقق من الرسم البياني أعلاه. لاحظ أن المسافة البادئة لكتلة معينة تظل كما هي في جميع أنحاء الكود حتى لو تم إدخال كتلة جديدة في المنتصف. تأكد من أن المسافة البادئة الخاصة بك متسقة. إذا كنت تستخدم مسافات ، فاستخدم دائمًا المسافات وإذا كنت تستخدم علامات تبويب ، فاستخدم دائمًا علامات التبويب. سيؤدي خلط اثنين من المشاكل.

مثال المسافة البادئة في بايثون

مثال المسافة البادئة

يتم عرض المسافة البادئة الصحيحة في المثال أعلاه. انظر حلقة 'for' للمبتدئين. كل شىء في داخل يجب وضع مسافة بادئة لحلقة 'for'. داخل حلقة 'for' ، لدينا عبارة 'if'. داخل عبارة 'if' ، يجب أن يكون كل شيء بالإضافة إلى ذلك مسافة بادئة.

يمكنك بسهولة التحقق من مكان حدوث خطأ المسافة البادئة عن طريق فحص سجل الأخطاء ورؤية السطر من حيث نشأ الخطأ.

الحل 2: تمكين رموز علامة التبويب / المسافة في المحرر

إذا كنت تواجه صعوبة في وضع مسافة بادئة لشفرتك عن طريق 'التخمين' كما يفعل جميع المبرمجين ، فيمكنك تمكين رموز علامة التبويب / المسافة في IDE أو محرر الشفرة. سيؤدي هذا الخيار إلى تمكين 'النقاط' الصغيرة في التعليمات البرمجية الخاصة بك حيث تمثل كل نقطة مسافة أو علامة تبويب. يمكنك استخدام هذا لوضع مسافة بادئة للشفرة بشكل أكثر ملاءمة والتأكد من عدم وجود مسافة بادئة إضافية أو أن بعضها مفقود.

في هذا المثال ، سوف نأخذ Notepad ++ ونرى كيف يمكنك تمكين الرموز. إذا كنت تستخدم برنامجًا آخر لتحرير التعليمات البرمجية ، فيمكنك تمكين الإعداد الخاص به.

  1. صحافة عرض> إظهار الرمز> إظهار المسافة البيضاء و TAB تمكين المسافات البيضاء وعلامة الجدولة في بايثون

    تمكين المسافة البيضاء وعلامة التبويب - Notepad ++

  1. الآن تم تمكين الخيار. يمكنك أيضًا تمكين دليل المسافة البادئة حتى تصبح الأمور أسهل بالنسبة لك.
عينة كود بمسافة بادئة صحيحة في بايثون

نموذج التعليمات البرمجية بمسافة بادئة صحيحة

تحقق من المثال أعلاه. انظر المسافة البادئة المنفذة بعد كل فئة. يتم تمثيل كل مساحة بنقطة واحدة. بعد إجراء تغييرات على المسافة البادئة الخاطئة في التعليمات البرمجية الخاصة بك ، قم بتشغيلها مرة أخرى ومعرفة ما إذا كان هذا يحل المشكلة.

العلامات خطأ المسافة البادئة بيثون 2 دقيقة للقراءة