بايثون: التعامل مع الأخطاء والاستثناءات (Try-Except)
الاستثناءات (Exceptions) هي أخطاء تحدث أثناء تشغيل البرنامج. بايثون توفر آلية للتعامل مع هذه الأخطاء بشكل منظم باستخدام try-except.
لماذا نتعامل مع الأخطاء؟
تجنب توقف البرنامج فجأة.
تقديم رسائل خطأ مفهومة للمستخدم.
التعامل مع المواقف غير المتوقعة (مثل ملف غير موجود).
كتلة Try-Except الأساسية
try:
num = int(input(“أدخل رقم: “))
result = 10 / num
print(f”النتيجة: {result}”)
except ValueError:
print(“خطأ: يجب إدخال رقم صحيح”)
except ZeroDivisionError:
print(“خطأ: لا يمكن القسمة على صفر”)
استخدام Else و Finally
try:
file = open(“data.txt”, “r”)
data = file.read()
except FileNotFoundError:
print(“الملف غير موجود”)
else:
print(“تم قراءة الملف بنجاح”)
print(data)
finally:
print(“سيتم تنفيذ هذا مهما حدث”)
file.close()
رفع الاستثناءات (Raise)
def check_age(age):
if age < 0:
raise ValueError(“العمر لا يمكن أن يكون سالباً”)
if age < 18:
print(“قاصر”)
else:
print(“بالغ”)
تمارين
التمرين 1: اكتب برنامجاً يطلب من المستخدم إدخال رقمين ويقسم الأول على الثاني، مع معالجة أخطاء الإدخال والقسمة على صفر.
التمرين 2: اكتب دالة تقرأ ملف نصي وتعيد عدد الكلمات فيه، مع معالجة حالة عدم وجود الملف.
للمزيد من الدروس، راجع درس بايثون: الدوال Functions ودرس بايثون: التعامل مع الملفات.
مدونة التربية و التعليم في الجزائر – دروس، فروض، نتائج امتحانات مدونة التربية والتعليم في الجزائر | تحضير الدروس، فروض واختبارات، نتائج البكالوريا وBEM، مسابقات التوظيف، والتوجيه المدرسي للطلاب وأولياء الأمور.