نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر

نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
PY

منهج Python

دليل مرجعي شامل

كل اللغات
مدرسة البرمجة/منهج Python/اتخاذ القرارات (If, Elif, Else Statements)

اتخاذ القرارات (If, Elif, Else Statements)

if else pythonجمل شرطية pythonelif pythonاتخاذ القرار python

جدول مرجعي سريع

1

اتخاذ القرارات (If, Elif, Else Statements)

العبارة أو المفهوم الشرطيآلية التنفيذ والتحكم في التدفقشروط الصياغة البرمجية والملاحظات
العبارة الأساسية ifتفحص الشرط الأول فإذا كان True يتم تنفيذ الكتلة البرمجية التابعة لها ويتجاهل باقي الشروط تماماًأول سطر إلزامي في أي بنية شرطية
العبارة البديلة elifاختصار للجملة else if وتفحص شرطاً جديداً في حال فشل الشرط الذي يسبقها مباشرةخيار تكراره مفتوح بعدد غير محدود
العبارة النهائية elseكتلة الأمان الأخير التي تُنفذ تلقائياً في حال فشل وسقوط جميع الشروط السابقة كلياًخيار اختياري ولا يظهر إلا مرة واحدة في النهاية
النقطتان الرأسيتان كولونرمز إلزامي يوضع مباشرة بعد نهاية أي جملة شرطية للإعلان عن بدء كتلة برمجية فرعيةنسيانها يسبب خطأ SyntaxError فوراً
المسافة البادئة Indentationإزاحة كود التكتل بمقدار أربع مسافات أو زر Tab لإعلام بايثون بتبعية هذا الكود للشرطمعيار إجباري يترتب على مخالفته خطأ تكتلي
المعامل الثلاثي Ternary Operatorصياغة سريعة ومختصرة لكتابة شرط بسيط في سطر واحد وإسناد النتيجة فوراً لمتغيرترفع كفاءة واختصار الأكواد غير المعقدة

الشرح

1. مفهوم اتخاذ القرارات والتحكم في التدفق (Control Flow)

بشكل افتراضي، يقرأ محرك بايثون الأكواد وينفذها بشكل متتالي من الأعلى إلى الأسفل. تتيح جمل اتخاذ القرار (Conditional Statements) كسر هذا التدفق الخطي، مما يمكّن البرنامج من فحص شروط معينة في الذاكرة، وبناءً على النتيجة المنطقية (True أو False)، يقرر تخطي كتل برمجية كاملة أو تنفيذ مسارات مخصصة.

2. البنية الهيكلية للجمل الشرطية (Syntax)

تتكون البنية الشرطية الكاملة في بايثون من ثلاثة أركان أساسية ترتب منطقياً وتخضع لقواعد صياغة صارمة:

python
1score = 85
2
3if score >= 90:
4 print("التقدير: ممتاز")
5elif score >= 80:
6 print("التقدير: جيد جداً")
7elif score >= 70:
8 print("التقدير: جيد")
9else:
10 print("التقدير: بحاجة لتحسين")

القواعد الصارمة للصياغة:

  • النقطتان الرأسيتان (:): يجب وضع علامة : في نهاية كل سطر شرطي (if, elif, else). نسيان هذه العلامة يمنع المحرك من فهم بنية الكود ويطلق خطأ صياغة (SyntaxError).
  • المسافة البادئة (Indentation): لا تستخدم بايثون الأقواس المجعدة {} لتحديد نطاق الشروط كبقية اللغات، بل تعتمد كلياً على الإزاحة الفراغية (الافتراضي هو 4 مسافات أو ضغطة زر Tab). أي سطر مزاح إلى الداخل يُعتبر برمجياً تابعاً ومملوكاً للشرط الذي يعلوه، وإذا تساوت المسافات البادئة يُعتبر الخروج من النطاق قد تم.
  • مرونة التكرار: يبدأ الهيكل دائماً بعبارة if واحدة، ويمكن أن يتبعها عدد غير محدود من عبارات elif (اختصار لـ else if) لفحص احتمالات بديلة متتالية، وينتهي الهيكل بعبارة else واحدة اختيارية لتغطية أي احتمالات غير متوقعة.

3. آلية التنفيذ البرمجي خلف الكواليس

عند تشغيل الكتل الشرطية، تسير بايثون عبر خطة الفحص المتتالي:

  1. يتم تقييم شرط عبارة if؛ فإذا كان True يتم تنفيذ الكود التابع لها فوراً، ثم يقفز المحرك خارج البنية الشرطية بالكامل متجاهلاً كافة أسطر الـ elif والـ else التالية حتى لو كانت شروطها صحيحة منطقياً.
  2. إذا كان شرط if خاطئاً (False)، ينتقل المحرك للشرط الموالي elif ويفحصه، وتتكرر العملية نزولاً.
  3. في حال سقطت جميع الشروط وتحولت إلى False ولم ينجح أي مسار، يتجه المحرك تلقائياً لتنفيذ كود عبارة else.

4. المعامل الثلاثي الاختصاري (Ternary Operator)

توفر بايثون أسلوباً مختصراً يُعرف بـ (Conditional Expression) أو المعامل الثلاثي، يتيح كتابة جملة if ... else البسيطة بالكامل في سطر واحد. يُستخدم هذا النمط خصيصاً لاختصار الأكواد وتسهيل قراءتها عند الرغبة في إسناد قيمة لمتغير بناءً على شرط سريع ومباشر.

ℹ️ معلومة

Variable = Value if True if Condition else Value if False

python
1age = 20
2
3# الصياغة المختصرة في سطر واحد
4status = "بالغ" if age >= 18 else "قاصر"
5print(status) # المخرج: بالغ

الصياغة (Syntax)

syntax
1# صيغة if-elif-else
2score = 75
3
4if score >= 90:
5 grade = "ممتاز"
6elif score >= 80:
7 grade = "جيد جداً"
8elif score >= 70:
9 grade = "جيد"
10elif score >= 60:
11 grade = "مقبول"
12else:
13 grade = "راسب"
14
15print(f"درجتك: {grade}")

أمثلة عملية

مثال 1: تحديد التقدير

تحديد التقدير
1grade = int(input("أدخل درجتك (0-100): "))
2
3if grade >= 90:
4 print("ممتاز - A")
5elif grade >= 80:
6 print("جيد جداً - B")
7elif grade >= 70:
8 print("جيد - C")
9elif grade >= 60:
10 print("مقبول - D")
11else:
12 print("راسب - F")

مثال 2: Ternary Operator

Ternary Operator
1age = 20
2
3# طريقة مختصرة لـ if-else
4status = "بالغ" if age >= 18 else "قاصر"
5print(status)
6
7# مثال آخر
8number = 7
9parity = "فردي" if number % 2 != 0 else "زوجي"
10print(f"{number} هو رقم {parity}")

نصائح احترافية

  • —**نصائح الجمل الشرطية:**
  • —تجنب التداخل العميق (nested if) - أقصاه 3 مستويات
  • —استخدم `match` (Python 3.10+) كبديل للـ elif الطويلة
  • —المسافة البادئة المتسقة ضرورية - استخدم 4 مسافات
  • —الـ Ternary مفيد للحالات البسيطة فقط

الدرس السابق

العوامل المنطقية

الدرس التالي

الجمل الشرطية المتداخلة (Nested If Statements)

نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر