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