جدول المحتويات[يخفي][يعرض]
ستكون هذه المحاضرة مهمة إذا كنت تتعامل مع برامج كبيرة.
سوف تتعلم كيفية التعامل مع الأخطاء من خلال كتل الاستثناءات واستخدام التعليقات في بايثون.
الاستثناءات
سوف نتعلم كيفية التعامل مع الأخطاء في برامج بايثون. لنبدأ بكتابة برنامج صغير لمعرفة عمر المستخدم من الجهاز.
age = int(input('Age'))
print(age)
دعونا نديرها.
الآن ، انظر إلى كود الخروج من هذا البرنامج. رمز الخروج 0 يعني إنهاء برنامجنا بنجاح ولم تكن هناك أخطاء. ولكن ماذا لو قمنا بتشغيل هذا البرنامج مرة أخرى وبدلاً من إدخال قيمة عددية ، أدخلنا سلسلة؟
نحصل على خطأ في القيمة في رسالته "حرفية غير صالحة لـ int () مع الأساس 10" بشكل أساسي ما تخبرنا به هذه الرسالة هو أن هذه السلسلة "qwe" لا تحتوي على رقم منزل صالح يمكن تحويله إلى عدد صحيح. الآن ، انظر إلى كود الخروج من هذا البرنامج. رمز الخروج 1 يعني أن رمز الخروج الخاص بنا قد تعطل ، لذا فإن الرقم 0 يعني دائمًا النجاح وأي شيء ما عدا 0 يعني التعطل. في البرمجة ، نشير إلى هذا النوع من الخطأ كاستثناء.
بصفتك مبرمجًا جيدًا للبايثون ، يجب أن تتوقع هذا الموقف. لا تريد السماح لبرنامجك بالكامل بالتعطل لمجرد إدخال المستخدم قيمة غير صالحة. لذا بدلاً من ترك البرنامج يتعطل ، يجب عليك التعامل مع الموقف وطباعة رسالة خطأ مناسبة. هذا ما سأعرضه عليكم في هذه المحاضرة.
في بايثون ، لدينا بناء يسمى try except
تستخدم للتعامل مع حالات الخطأ.
try:
age = int(input('Age'))
print(age)
هذين السطرين من التعليمات البرمجية جزء من try:
الكتلة. سوف نضيف except
منع بعده بنوع الخطأ الذي نتوقعه.
except ValueError:
print('Invalid Value')
سيعيد الآن السلسلة "قيمة غير صالحة" في حالة وجود خطأ في القيمة.
دعنا نتحقق من نوع آخر من الأخطاء عن طريق تعديل البرنامج السابق.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ValueError:
print('Invalid Value')
الآن ، إذا قمنا بتشغيل هذا البرنامج وإدخال '0' في العمر ، قيمة عددية. ومن ثم ، من الناحية الفنية ، لا ينبغي أن نحصل على أي استثناءات.
دعونا نديرها.
إلق نظرة. لقد تعطل برنامجنا وقمنا بعمل "خطأ في التقسيم الصفري" لأنه لا يمكننا قسمة رقم على 0. مرة أخرى ، انظر إلى رمز الخروج. لم نتمكن من التقاط هذا النوع من الخطأ أو هذا النوع من الاستثناء مع هذا باستثناء الكتلة.
هذه الكتلة باستثناء ما تصطاد فقط استثناءات لخطأ قيمة النوع وسنحتاج إلى كتلة استثناء جديدة للتعامل مع Zero Division Error. دعونا نعدل البرنامج وفقًا لذلك.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ZeroDivisionError:
print('Age cannot be 0')
except ValueError:
print('Invalid Value')
حلت المشكلة!
- خطأ في بناء الجملة
- خطأ مطبعي
- خطأ في الاسم
- خطأ في الفهرسة
- القيمة خطأ
- Zerodivision Error
- خطأ في السمة
- خطأ وقت التشغيل
- خطأ المفتاح
- Memory Error
- تأكيد الخطأ
- خطأ المسافة البادئة
- الخطأ الإلكتروني
- خطأ النقطة العائمة
- رعب
- خطأ منطقي
- خطأ في النظام
- خطأ غير منفّذ
- أوسيرور
- خطأ
- مرجع خطأ
- خطأ أحادي
- خطأ حسابي
- خطأ Unicodedecode
- خطأ Unicodeencode
- خطأ Unicodetranslate
- أخطاء وقت التشغيل
بصفتك مبرمجًا ، يجب أن تكون على دراية بجميع الاستثناءات في برنامجك ويجب أن تتعامل معها وفقًا لذلك.
التعليقات
الآن ، سوف نتحدث عن التعليقات في بيثون. نستخدم التعليقات لإضافة ملاحظات أو تعليقات إلى برامجنا لتحسين إمكانية القراءة ونقل بعض الرسائل إلى شخص يقرأ التعليمات البرمجية الخاصة بنا.
يمكن كتابة التعليقات في البرنامج باستخدام علامة #. كل شيء تكتبه بعد # سيتم تجاهله بواسطة مترجم Python ولن يتم تنفيذه. يمكنك إضافة تعليقات على الأسطر الفردية وكذلك بعد سطر من التعليمات البرمجية.
من خلال هذه التعليقات ، يمكننا شرح شيء ما عن الكود الخاص بنا ، ويمكننا استخدامها كتذكيرات لإصلاح الأشياء أو توضيح الأمور ، أو يمكننا استخدامها لتوصيل الأشياء مع المطورين الآخرين الذين يقرؤون الكود الخاص بنا أو لشرح سبب كتابتنا لهذا الكود. بطريقة معينة. هذه حالات استخدام جيدة لاستخدام التعليقات. يمكننا أيضًا الحصول على تعليقات عبر أسطر متعددة. يجب أن يبدأ كل سطر بعلامة # جديدة. الآن هناك شيء واحد عليك تجنبه عند استخدام التعليقات وهو شرح ما يفعله الكود.
هذا مثال لتعليق سيء:
هذا تعليق سيء لأنه يخبرني بما هو واضح. يخبرني أن السطر التالي سيطبع "غروب الشمس في الغرب". المشكلة الآن في هذا التعليق أنه بصرف النظر عن كونه مطولًا ومتكررًا إذا أتيت إلى هنا وغيّرت الغرب إلى الشرق ، فإن هذا التعليق يصبح قديمًا. لذلك ، في كل مرة نقوم فيها بتحديث الكود الخاص بنا ، سيتعين علينا العودة وتعديل التعليق المقابل.
باختصار ، استخدم تعليقاتك للإجابة عن كيفية الإجابة ولماذا بدلاً من الإجابة على ما.
هذا مثال على تعليق جيد:
في التعليق الأول ، أذكر نفسي أنني بحاجة إلى تحديث قيمة الدخل هذه قبل إنهاء البرنامج والقيمة الثانية هي إخبار المطورين الآخرين الذين يقرؤون الكود الخاص بي بأن جميع الأخطاء لا يتم التعامل معها في هذا البرنامج.
بشكل قاطع ، يجب تجنب التعليقات الزائدة عن الحاجة ويجب أن تضيف تعليقاتك بعض القيمة إلى التعليمات البرمجية الخاصة بك.
يتم إحتوائه!
الاستثناءات والتعليقات هما جانبان من جوانب البرمجة غالبًا ما يتم تجاهلهما وعادة ما يتم التقليل من أهميتها.
يعد تعطل برنامجك سيئًا تقريبًا مثل عدم التعليق على التعليمات البرمجية عند الحاجة. ستركز المحاضرة التالية على الفصول الدراسية والمُنشئين.
اترك تعليق