منتديات الهندسة الكهربية والإلكترونية والميكاترونكس والكومبيوتر
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

معالجة الاستثناء :

اذهب الى الأسفل

معالجة الاستثناء : Empty معالجة الاستثناء :

مُساهمة من طرف Admin الخميس فبراير 18, 2016 10:57 am

معالجة الاستثناء :
حتى الآن، والحصول على خطأ ، أو استثناء ، في برنامج البايثون يعني أن البرنامج بأكمله سوف يتحطم . أنت لا تريد لهذا أن يحدث في برامج في العالم الحقيقي . بدلا من ذلك ، أنت تريد يكشف البرنامج عن الأخطاء ، والتعامل معها، ومن ثم الاستمرار في تشغيل .
على سبيل المثال ، في البرنامج التالي الذي يحتوي على الخطأ “divide-byzero” . افتح نافذة جديدة فى محرر الملفات وإدخل الكود التالي، واحفظه باسم zeroDivide.py:

معالجة الاستثناء : 111

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

معالجة الاستثناء : 211

الخطأ ZeroDivisionError يحدث كلما حاولت قسمة عدد على صفر. من رقم السطر الذى يرد في رسالة الخطأ ، تعرف أن العبارة return فى الدالة spam() هو المسبب للخطأ .
يمكن التعامل مع الأخطاء بعبارات try و except . يتم وضع الكود الذى يحتمل أن يكون خطأ في بيان عبارة try . يتحرك تنفيذ البرنامج إلى بداية بيان عبارة try التالية إذا حدث خطأ .
يمكنك وضع كود divide-by-zero السابق في بيان عبارة try ، ويكون لديها بيان except للتعامل مع ما يحدث عندما يحدث هذا الخطأ.

معالجة الاستثناء : 311

عندما يتسبب بيان try فى خطأ ، فإن تنفيذ البرنامج يتحرك على الفور إلى الكود فى بيان except . بعد تشغيل هذا الكود ، فإن التنفيذ يستمر كما هو المعتاد .
فيما يلى خرج البرنامج السابق .

معالجة الاستثناء : 411


لاحظ أن أية أخطاء تحدث فى دعوات الدالة فى كتلة try سوف تظهر أيضا . اعتبر البرنامج التالى ، والذى لديه دعوات للدالة spam() فى كتلة try .

معالجة الاستثناء : 511

عند تشغيل هذا البرنامج فإن الخرج سوف يكون بالشكل التالى :

معالجة الاستثناء : 610


السبب فى أن print(spam(1)) لن يتم تنفيذها على الإطلاق هو أنه بمجرد يقفز التنفيذ إلى كود عبارة except ، فإنه لا يعود إلى بيان try . بدلا من ذلك ، فهو فقط يستمر فى التحرك لأسفل فى طريقه المعتاد .
******************

برنامج قصير : تخمين العدد :

Admin
Admin

عدد المساهمات : 1194
تاريخ التسجيل : 28/01/2014

https://fathallaabdelaziz.forumarabia.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة

- مواضيع مماثلة

 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى