في الدرس السابع سيكون الشرح عن Try and Except

 

ما هي Try and Except:

تستعمل خاصيه Try and Except في البايثون لتعامل مع الاخطأ البرمجيه

 

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

قد يكون المثال غير واضح ولكن مع الامثله البرمجيه راح تفهم باذن الله.

 

مثال:

سنقوم بأنشاء متغيرين يطلب من المستخدم ادخال اسمه ورقم هاتفه

name = input('Enter your name: ')
number = int(input('Enter your number: '))
print('hello, {} Your number: {}'.format(name, number))

المخرجات:

Enter your name: Abdullah
Enter your number: 99

 

ولكن ماذا لو ان المستخدم اخطأ في ادخال الرقم واضاف حرف

ونحن سابقا قمنا بتعريف متغير الرقم (number) كعدد صحيح (integer)

 

  File "mycode.py", line 3, in <module>
    number = int(input('Enter your number: '))
ValueError: invalid literal for int() with base 10: 'test'

 

سيظهر له خطا”ValueError” يخبره بأنه ادخل قيمه خطاءه!

لحل هذه المشكله سنقوم بستخادم Try and Except:
* طريقه التعامل مع Try: نقوم بكتابه try ثم متبوعه مباشره بنقطتين راسيتين ثم ننزل سطر
والضغط على زر Tab ثم كتابه الكود داخل مجال try فقط

بعد الانتهاء ننزل سطر ثم نعود الى بدايه السطر لنخرج من مجال try ثم نقوم بكتابه except
ثم مسافه واسم الخطا او نتبعها مباشره بنقطتين راسيتين ثم ننزل سطر
ونكتب رساله او كود برمجي اخر لتنفيذه في حاله حصول مشكله

try:
    name = input('Enter your name: ')
    number = int(input('Enter your number: '))
    print('hello, {} Your number: {}'.format(name, number))
except ValueError:
    print('Input is incorrect: Enter correct numbers only')

مترجم البايثون يقوم بتنفيذ الاكواد من الاعلى الى الاسفل حتى النهايه وهنا استخدمنا try بمعنى حاول تنفيذ هذه الاكواد
وفي حاله حدوث خطا برمجي انتقل الى except (استثناء) ونفذ الاسطر البرمجيه الاخرى.

مثال على المخرجات:

في حاله ان المستخدم قام بـأدخال المطلوب بشكل صحيح سيتم تنفيذ الكود داخل try فقط, وهو طلب الاسم, طلب الرقم وطباعه المخرجات

 

Enter your name: Abdullah
Enter your number: 100
hello, Abdullah Your number: 100

ولكن في حاله ان المستخدم اخطا في ادخال الرقم مثلا, ستظهر له رساله بان المدخلات غير صحيحه وعليك ادخال ارقام فقط.

 

Enter your name: Abdullah
Enter your number: 3B
Input is incorrect: Enter correct numbers only

في هذا الدرس تم شرح:

  • ما هي Try and Except
  • طريقه التعامل مع Try and Except