في لغة بايثون، تُستخدم عبارات if...else
لاتخاذ القرارات في البرنامج بناءً على تحقق شرط معين. فهي تسمح لك بتنفيذ كتل مختلفة من التعليمات البرمجية اعتمادًا على ما إذا كان الشرط صحيحًا (True
) أم خاطئًا (False
).
بنية if
البسيطة:
أبسط شكل لعبارة if
هو التحقق من شرط واحد فقط. إذا كان الشرط صحيحًا، فسيتم تنفيذ الكتلة البرمجية التي تليها مباشرةً. أما إذا كان الشرط خاطئًا، فسيتم تجاهل هذه الكتلة البرمجية والانتقال إلى التعليمات البرمجية التي تليها.
if condition: # الكود الذي سيتم تنفيذه إذا كان الشرط صحيحًا statement1 statement2 ...
مثال:
x = 10if x > 5: print("x أكبر من 5") # سيتم تنفيذ هذه العبارة لأن الشرط صحيح
بنية if...else
:
تُستخدم عبارة else
لتحديد كتلة برمجية بديلة يتم تنفيذها إذا كان الشرط في عبارة if
خاطئًا.
if condition: # الكود الذي سيتم تنفيذه إذا كان الشرط صحيحًا statement1 statement2 ...else: # الكود الذي سيتم تنفيذه إذا كان الشرط خاطئًا statement3 statement4 ...
مثال:
x = 3if x > 5: print("x أكبر من 5")else: print("x ليس أكبر من 5") # سيتم تنفيذ هذه العبارة لأن الشرط خاطئ
بنية if...elif...else
:
تُستخدم عبارة elif
(اختصار لـ "else if") لتحديد شروط إضافية يتم التحقق منها إذا كان الشرط السابق خاطئًا. يمكنك استخدام أي عدد من عبارات elif
.
if condition1: # الكود الذي سيتم تنفيذه إذا كان الشرط الأول صحيحًاelif condition2: # الكود الذي سيتم تنفيذه إذا كان الشرط الأول خاطئًا والثاني صحيحًاelif condition3: # الكود الذي سيتم تنفيذه إذا كان الشرطين الأول والثاني خاطئين والثالث صحيحًا...else: # الكود الذي سيتم تنفيذه إذا كانت جميع الشروط السابقة خاطئة
مثال:
x = 7if x > 10: print("x أكبر من 10")elif x > 5: print("x أكبر من 5 ولكن ليس أكبر من 10") # سيتم تنفيذ هذه العبارةelif x > 0: print("x أكبر من 0 ولكن ليس أكبر من 5")else: print("x ليس أكبر من 0")
ملاحظات مهمة:
- المسافة البادئة: في بايثون، تُستخدم المسافة البادئة (عادةً 4 مسافات) لتحديد الكتل البرمجية التي تتبع
if
وelif
وelse
. يجب أن تكون جميع العبارات داخل الكتلة البرمجية بنفس مستوى المسافة البادئة. - الترتيب: يتم فحص الشروط بترتيب ظهورها. بمجرد تحقق شرط واحد، يتم تنفيذ الكتلة البرمجية الخاصة به وتجاهل بقية الشروط.
else
اختيارية: عبارةelse
اختيارية. يمكنك استخدامif
وelif
فقط بدونelse
إذا لم تكن هناك حاجة إلى كتلة برمجية افتراضية.- الشروط المركبة: يمكنك استخدام العوامل المنطقية (
and
وor
وnot
) لدمج شروط متعددة في شرط واحد.
مثال على شرط مركب:
age = 25has_license = True
if age >= 18 and has_license: print("مؤهل للقيادة")else: print("غير مؤهل للقيادة")
تُعد عبارات if...else
أداة قوية للتحكم في البرنامج واتخاذ القرارات بناءً على الظروف المختلفة