رفع الاستثناءات
اكتشفوا كيفية رفع الاستثناءات والتحكم فيها في شيفرتكم
رفع الاستثناءات درس مجاني في Learn AI with Python على CoddyKit. هذا هو الدرس 3 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Learn AI with Python، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
مقدمة إلى رفع الاستثناءات
مقدمة إلى رفع الاستثناءات
في Python، يمكنكم رفع الاستثناءات عمدًا باستخدام الكلمة المفتاحية raise. ويفيد ذلك في التحقق من صحة الإدخال، وفرض القيود، أو إيقاف البرنامج عند حدوث أمر غير متوقع.
في هذا الدرس، ستتعلّمون كيفية رفع الاستثناءات بفعالية ومعالجتها على النحو المناسب.

ماذا يعني رفع استثناء؟
ماذا يعني رفع استثناء؟
يعني رفع استثناء مقاطعة التدفق الطبيعي للبرنامج للإشارة إلى حدوث خطأ. ويتم ذلك باستخدام الكلمة المفتاحية raise.
# Raising a basic exception
raise Exception("An error occurred.")استخدام الاستثناءات المضمّنة
استخدام الاستثناءات المضمّنة
يوفر Python عدة استثناءات مضمّنة، مثل ValueError وTypeError، يمكنكم استخدامها مع الكلمة المفتاحية raise:
# Raising a built-in exception
number = "abc"
if not number.isdigit():
raise ValueError("Input must be a number.")رفع الاستثناءات في الدوال
رفع الاستثناءات في الدوال
يمكنكم رفع الاستثناءات في الدوال للإشارة إلى وجود أخطاء لدى المستدعي:
# Raising exceptions in a function
def divide(a, b):
if b == 0:
raise ZeroDivisionError("Division by zero is not allowed.")
return a / b
try:
result = divide(10, 0)
except ZeroDivisionError as e:
print(e)إعادة رفع الاستثناءات
إعادة رفع الاستثناءات
يمكنك إعادة رفع الاستثناء بعد التقاطه للسماح للشيفرة ذات المستوى الأعلى بمعالجته:
# Reraising an exception
try:
raise ValueError("Invalid value.")
except ValueError as e:
print(f"Caught an error: {e}")
raise # Reraise the exceptionتخصيص رسائل الاستثناءات
تخصيص رسائل الاستثناءات
يمكنكم توفير رسائل خطأ مفصلة لتسهيل تصحيح الأخطاء:
# Customizing exception messages
def check_age(age):
if age < 0:
raise ValueError("Age cannot be negative. Please enter a valid age.")
try:
check_age(-5)
except ValueError as e:
print(e)استخدام تسلسل الاستثناءات
استخدام تسلسل الاستثناءات
يتيح تسلسل الاستثناءات ربط استثناء بآخر باستخدام الكلمة المفتاحية from:
# Exception chaining
try:
raise ValueError("Invalid value.")
except ValueError as e:
raise RuntimeError("A runtime error occurred.") from eأفضل الممارسات لرفع الاستثناءات
أفضل الممارسات لرفع الاستثناءات
إليك بعض النصائح لرفع الاستثناءات:
- استخدم الاستثناءات المضمّنة كلما أمكن.
- قدّم رسائل خطأ واضحة ومفيدة.
- أعد رفع الاستثناءات عند الضرورة فقط.
الأخطاء الشائعة عند رفع الاستثناءات
الأخطاء الشائعة عند رفع الاستثناءات
فيما يلي بعض الأخطاء التي ينبغي تجنبها:
- رفع استثناءات عامة دون تقديم رسائل خطأ محددة.
- استخدام استثناءات مخصّصة دون داعٍ عندما تكون الاستثناءات المضمّنة كافية.
- عدم معالجة الاستثناءات على النحو المناسب بعد رفعها.
ماذا تعلّمنا؟
ماذا تعلّمنا؟
في هذا الدرس، تعلّمتم:
- كيفية استخدام الكلمة المفتاحية
raiseلرفع الاستثناءات عمدًا. - كيفية استخدام الاستثناءات المضمّنة وتوفير رسائل خطأ مخصّصة.
- كيفية إعادة رفع الاستثناءات واستخدام تسلسل الاستثناءات.
أحسنتم! لننتقل إلى الموضوع التالي.

الأسئلة الشائعة
هل درس «رفع الاستثناءات» مجاني؟
نعم — نص درس «رفع الاستثناءات» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Learn AI with Python، انتقل إلى CoddyKit PRO. تتضمن دورة Learn AI with Python 4 دروس في المجموع.
ماذا ستتعلم في «رفع الاستثناءات»؟
اكتشفوا كيفية رفع الاستثناءات والتحكم فيها في شيفرتكم تتمرن على Learn AI with Python مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Learn AI with Python؟
لا تُشترط خبرة سابقة. Learn AI with Python على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 3 من أصل 4.
كم من الوقت يستغرق درس «رفع الاستثناءات»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Learn AI with Python هذا؟
نعم. كل درس في Learn AI with Python يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- فهم الأخطاء
- استخدام try وexcept وfinally
- رفع الاستثناءات
- إنشاء استثناءات مخصصة