Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

جملة If - Else المتداخلة

جزء من قسم الأساسيات في رحلة Python على Coddy. الدرس 23 من 77.

تتيح لك عبارات If-Else المتداخلة التحقق من شروط متعددة من خلال وضع عبارة if-else داخل أخرى. يمكنك تداخل كتلة if داخل كتلة else. وهذا نمط شائع وصالح في Python.

أنشئ عبارة if-else أساسية:

age = 18
title = "None"
if age >= 18:
    title = "Adult"
else:
    title = "Minor"

لنُضف الآن شرطًا متداخلًا داخل كتلة else:

age = 18
title = "None"
allowed_to_drink = False
if age >= 18:
    title = "Adult"
else:
    title = "Minor"
    if age >= 13:
        title = "Teenager"
    else:
        title = "Child"

يمكنك أيضًا تداخل شرط داخل كتلة if:

age = 25
title = "None"
allowed_to_drink = False
if age >= 18:
    title = "Adult"
    if age >= 21:
        allowed_to_drink = True
    else:
        allowed_to_drink = False
else:
    title = "Minor"

في كلا المثالين، لا تُنفَّذ جملة if-else الداخلية إلا عند تحقق الشرط الخارجي الذي يحتوي عليها. إن وضع جملة if داخل كتلة else (أو داخل كتلة if) صالح تمامًا. وهذا تحديدًا ما يجعلها «متداخلة».

challenge icon

التحدي

مبتدئ

اكتب برنامجًا يحدد الأهلية لمشاهدة فيلم استنادًا إلى العمر وإرشاد الوالدين.

الكود المُعطى (لا تعدّله):

  1. تم تعريف متغير age وإسناد قيمة إليه من الإدخال
  2. تم تعريف متغير with_parent وإسناد قيمة منطقية إليه. تكون قيمته True إذا كان الإدخال هو "true"، أو False إذا كان الإدخال هو "false"
  3. تم تعريف متغير message بالقيمة "None"

مهمتك:
استخدم عبارات if-else متداخلة لتعيين المتغير message إلى إحدى السلاسل النصية التالية:

  1. إذا كان العمر 18 عامًا أو أكثر، فعيّن message إلى "You can watch any movie".
  2. إذا كان العمر أقل من 18 عامًا:
    1. إذا كانت قيمة with_parent هي True، فعيّن message إلى "You can watch PG-13 movies".
    2. إذا كانت قيمة with_parent هي False، فعيّن message إلى "You can only watch G-rated movies".

مهم: نظرًا لأن with_parent من النوع المنطقي بالفعل، فتحقّق منه مباشرةً (مثلًا، if with_parent:): لا تقارنه بسلسلة نصية مثل "true" أو "True".

مهم: يجب أن تتطابق السلاسل النصية تمامًا، بما في ذلك حالة الأحرف وعلامات الترقيم. على سبيل المثال، استخدم "PG-13 movies" (حرف 'm' صغير)، وليس "PG-13 Movies".

جرّب بنفسك

# احصل على العمر كعدد صحيح
age = int(input())

# احصل على إرشاد الوالدين كقيمة منطقية (True/False)
with_parent = input() == "true"

# أعلن عن متغير باسم message بالقيمة "None"
message = "None"

# اكتب كود if-else المتداخل هنا


# لا تغيّر ما تحت هذا السطر
print(message)
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس الأساسيات

تدرّب بنفسك: مترجم Python عبر الإنترنت