دروس الوحدة (3/4)
الشرط: إذا، أليف، وإلا
الشروط تتيح لك تشغيل تعليمات برمجية مختلفة بناءً على
قيمة التعبير المنطقي. في بايثون تتم كتابتها بـ if، elif
(اختصار لـ "else if") وelse.
الشكل الأساسي
eta = 18
if eta >= 18:
messaggio = "maggiorenne"
else:
messaggio = "minorenne"يلاحظ:
- بعد الشرط هناك دائمًا نقطتان
:; - يتم تحديد الكتلة "الداخلية" بواسطة ** المسافة البادئة ** (4 مسافات)؛
- لا تحتاج إلى أقواس حول الشرط (على الرغم من أنه مسموح به).
المزيد من الفروع ذات elif
voto = 7
if voto >= 9:
giudizio = "ottimo"
elif voto >= 7:
giudizio = "buono"
elif voto >= 6:
giudizio = "sufficiente"
else:
giudizio = "insufficiente"يتم تقييم الفروع elif بالترتيب الذي كتبته به وتتوقف عنده
أول من تبين أنه صحيح.
التعبير الشرطي (الثلاثي)
في الحالات البسيطة يمكنك كتابة كل شيء في سطر واحد:
eta = 20
messaggio = "maggiorenne" if eta >= 18 else "minorenne"يُقرأ بشكل طبيعي باللغة الإنجليزية: "maggiorenne if eta >= 18 else مينوريني".
القيم "الحقيقة"/"الخاطئة".
لا يجب أن يكون الشرط عبارة عن مقارنة: أي قيمة يمكن أن تكون كذلك
استخدامها كشرط. تعتبر هذه العناصر كاذبة: False، None، 0،
""، []، {}. كل شيء آخر صحيح.
nome = "Ada"
if nome:
saluto = f"Ciao {nome}!"
else:
saluto = "Ciao sconosciuto!"التعبيرات الشرطية (المشغل الثلاثي)
تدعم بايثون بنية مدمجة ذات سطر واحد if-else، والتي تعمل كمشغل ثلاثي موجود في اللغات الأخرى:
result = "Even" if n % 2 == 0 else "Odd"يؤدي هذا إلى إبقاء التعليمات البرمجية الخاصة بك موجزة عندما تحتاج ببساطة إلى تعيين قيمة بناءً على شرط ما.
جربه بنفسك
بالنظر إلى "الرقم = 15"، قم بتعيين السلسلة "positivo" إلى "sign" إذا كان الرقم > 0، و"zero" إذا كان 0، و"negativo" بخلاف ذلك. تقييم "العلامة".
إظهار التلميح
ثلاثة فروع: > 0، == 0، وإلا.
الحل متاح بعد 3 من المحاولات
تمرين المراجعة
بالنظر إلى "العمر = 20"، قم بتعيين السلسلة "maggiorenne" أو "minorenne" إلى "category" باستخدام التعبير الثلاثي (if/else في سطر واحد).
إظهار التلميح
بناء الجملة: value_if_true إذا كان الشرط آخر value_if_false
الحل متاح بعد 3 من المحاولات
التحدي الإضافي
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 من المحاولات