الانتقال إلى المحتوى الرئيسي
الوحدة 1 · الدرس 3 من 43/36 في الدورة~10 min
دروس الوحدة (3/4)

الشرط: إذا، أليف، وإلا

الشروط تتيح لك تشغيل تعليمات برمجية مختلفة بناءً على قيمة التعبير المنطقي. في بايثون تتم كتابتها بـ if، elif (اختصار لـ "else if") وelse.

الشكل الأساسي

Python
eta = 18
if eta >= 18:
    messaggio = "maggiorenne"
else:
    messaggio = "minorenne"

يلاحظ:

  • بعد الشرط هناك دائمًا نقطتان :;
  • يتم تحديد الكتلة "الداخلية" بواسطة ** المسافة البادئة ** (4 مسافات)؛
  • لا تحتاج إلى أقواس حول الشرط (على الرغم من أنه مسموح به).

المزيد من الفروع ذات elif

Python
voto = 7
if voto >= 9:
    giudizio = "ottimo"
elif voto >= 7:
    giudizio = "buono"
elif voto >= 6:
    giudizio = "sufficiente"
else:
    giudizio = "insufficiente"

يتم تقييم الفروع elif بالترتيب الذي كتبته به وتتوقف عنده أول من تبين أنه صحيح.

التعبير الشرطي (الثلاثي)

في الحالات البسيطة يمكنك كتابة كل شيء في سطر واحد:

Python
eta = 20
messaggio = "maggiorenne" if eta >= 18 else "minorenne"

يُقرأ بشكل طبيعي باللغة الإنجليزية: "maggiorenne if eta >= 18 else مينوريني".

القيم "الحقيقة"/"الخاطئة".

لا يجب أن يكون الشرط عبارة عن مقارنة: أي قيمة يمكن أن تكون كذلك استخدامها كشرط. تعتبر هذه العناصر كاذبة: False، None، 0، ""، []، {}. كل شيء آخر صحيح.

Python
nome = "Ada"
if nome:
    saluto = f"Ciao {nome}!"
else:
    saluto = "Ciao sconosciuto!"

التعبيرات الشرطية (المشغل الثلاثي)

تدعم بايثون بنية مدمجة ذات سطر واحد if-else، والتي تعمل كمشغل ثلاثي موجود في اللغات الأخرى:

Python
result = "Even" if n % 2 == 0 else "Odd"

يؤدي هذا إلى إبقاء التعليمات البرمجية الخاصة بك موجزة عندما تحتاج ببساطة إلى تعيين قيمة بناءً على شرط ما.

جربه بنفسك

تمرين#python.m1.l3.e1
المحاولات: 0جارٍ التحميل…

بالنظر إلى "الرقم = 15"، قم بتعيين السلسلة "positivo" إلى "sign" إذا كان الرقم > 0، و"zero" إذا كان 0، و"negativo" بخلاف ذلك. تقييم "العلامة".

جارٍ تحميل المحرر…
إظهار التلميح

ثلاثة فروع: > 0، == 0، وإلا.

الحل متاح بعد 3 من المحاولات

تمرين المراجعة

تمرين#python.m1.l3.e2
المحاولات: 0جارٍ التحميل…

بالنظر إلى "العمر = 20"، قم بتعيين السلسلة "maggiorenne" أو "minorenne" إلى "category" باستخدام التعبير الثلاثي (if/else في سطر واحد).

جارٍ تحميل المحرر…
إظهار التلميح

بناء الجملة: value_if_true إذا كان الشرط آخر value_if_false

الحل متاح بعد 3 من المحاولات

التحدي الإضافي

تمرين#python.m1.l3.e3
المحاولات: 0جارٍ التحميل…

Write a conditional structure that checks if the variable `x` (initialized to `-5`) is greater than 0, less than 0, or equal to 0. Assign the string `'positive'`, `'negative'`, or `'zero'` to `sign` accordingly. Finally, evaluate `sign`.

جارٍ تحميل المحرر…
إظهار التلميح

استخدم if x > 0: وelif x < 0: وelse: للتعامل مع الحالات الثلاث.

الحل متاح بعد 3 من المحاولات