Try Except في Python
- الصفحة السابقة PIP في Python
- الصفحة التالية إدخال الأوامر لـ Python
try
يسمح لك القفل باختبار الكود للبحث عن أخطاء.
except
يسمح لك القفل بمعالجة الأخطاء.
finally
يسمح لك القفل بتنفيذ الكود مهما كان نتيجة قفل try وexcept.
معالجة الاستثناءات
عندما نطلق Python وحدث خطأ أو استثناء، عادة ما نتوقف ونولد رسالة خطأ.
يمكنك استخدام try
تعالج هذه الاستثناءات:
المثال
سيولد قفل try استثناءً، لأن x لم يتم تعريفه:
try: print(x) except: print(\"حدث استثناء\")
بسبب أن قفل try أطلق خطأ، سيتم تنفيذ قفل except.
إذا لم يكن هناك قفل try، فإن البرنامج سينهار ويطلق خطأ:
المثال
سيتم إطلاق خطأ، لأن x لم يتم تعريفه:
print(x)
عديد من الاستثناءات
يمكنك تعريف أي عدد من أقسام الاستثناءات حسب الحاجة، على سبيل المثال، إذا كنت تريد تنفيذ كود خاص للخطأ الخاص بك
المثال
إذا حدث خطأ في قفل try NameError
،则会打印 رسالة، وإذا كان هناك خطأ آخر فإنه سيتم طباعة رسالة أخرى:
try: print(x) except NameError: print(\"غير معرف متغير x\") except: print(\"شيء آخر حدث خطأ\")
Else
إذا لم يكن هناك خطأ، يمكنك استخدام else
كلمات مفتاحية لتحديد الكود الذي سيتم تنفيذه:
المثال
في هذا المثال،try
القفل لا يولد أي أخطاء:
try: print(\"مرحبًا\") except: print(\"شيء ما حدث خطأ\") else: print(\"لم يحدث أي خطأ\")
Finally
إذا تم تحديد finally
إذا كان هناك قفل، فإنه سيتم تنفيذ القفل النهائي سواء كان يحتوي على خطأ أم لا.
المثال
try: print(x) except: print(\"شيء ما حدث خطأ\") finally: print(\"ال\'حاول استثنائي\' انتهى\")
هذا مفيد جدًا للإغلاق والتنظيف للموارد.
المثال
تجربة فتح وكتابة ملف غير قابل للكتابة:
try: f = open("demofile.txt") f.write("Lorum Ipsum") except: print("Something went wrong when writing to the file") finally: f.close()
يمكن للبرنامج الاستمرار وليس يفتح ملفًا معينًا.
إثارة الاستثناء
كمطور برمجيات Python، يمكنك اختيار إثارة الاستثناء عند حدوث شرط معين.
لإثارة الاستثناء (إثارة الاستثناء)، استخدم raise
الكلمات المفتاحية.
المثال
إذا كان x أقل من 0، فإنه يسبب استثناءً ويؤدي إلى إنهاء البرنامج:
x = -1 if x < 0: raise Exception("Sorry, no numbers below zero")
raise
الكلمات المفتاحية لتحفيز الاستثناء.
يمكنك تعريف نوع الاستثناء الذي تريد إثارة، وكذلك النص الذي سيتم عرضه للمستخدم.
المثال
إذا كان x ليس عددًا صحيحًا، فإنه يسبب TypeError:
x = "hello" if not type(x) is int: raise TypeError("Only integers are allowed")
- الصفحة السابقة PIP في Python
- الصفحة التالية إدخال الأوامر لـ Python