الشروط
Conditions
كيف يتخذ البرنامج قرارات باستخدام if وelif وelse؟
البنية الأساسية
score = 75
if score >= 90:
grade = "ممتاز"
elif score >= 70:
grade = "جيد"
else:
grade = "يحتاج إلى مراجعة"
print(grade) # جيدتُقيَّم الشروط من الأعلى إلى الأسفل، ويُنفَّذ أول فرع صحيح فقط.
الشروط المركبة
age, has_id = 20, True
if age >= 18 and has_id:
print("مسموح")القيم الصحيحة والخاطئة ضمنياً
لا يلزم أن يكون الشرط مقارنة صريحة:
data = []
if not data:
print("لا توجد بيانات")القيم الخاطئة ضمنياً: False، None، 0، 0.0، ""، []، {}، set(). كل ما عداها يُعد صحيحاً.
التعبير الشرطي في سطر واحد
label = "إيجابي" if prob >= 0.5 else "سلبي"هذا الشكل مفيد في تحويل احتمال ناتج عن نموذج تصنيف إلى فئة باستخدام عتبة (threshold).
أخطاء شائعة
- نسيان النقطتين
:في نهاية سطر الشرط. - استخدام
=بدلاً من==في المقارنة. - إزاحة غير متسقة بين الأسطر داخل الفرع الواحد.
مصطلحات الدرس
- الجملة الشرطية Conditional Statement
- بنية تنفذ كتلة من الشيفرة فقط عندما يكون شرط منطقي صحيحاً.
- القيم الخاطئة ضمنياً Falsy Values
- قيم تُعامل كـ False في الشروط مثل 0 و"" و[] وNone.
الملخص
تسمح الجمل الشرطية if وelif وelse بتنفيذ أجزاء مختلفة من الشيفرة حسب قيمة شرط منطقي. تُقيَّم الشروط بالترتيب ويُنفَّذ أول فرع صحيح فقط، وتعامل Python قيماً مثل 0 والنص الفارغ والقائمة الفارغة وNone على أنها خاطئة (falsy).
أسئلة مراجعة
-
كم فرعاً يُنفَّذ في سلسلة if/elif/else؟
فرع واحد على الأكثر: أول فرع يتحقق شرطه، أو else إن لم يتحقق أي شرط.
-
هل تُعد القائمة الفارغة صحيحة أم خاطئة في الشرط؟
خاطئة (falsy).
المصادر والمراجع
إكمال الدرس
أكملت كل دروس المسار! يمكنك الآن طلب شهادة إكمال المسار.
اطلب الشهادة