في لغة البايثون، جملة if هي جملة الشرط conditional statement . تستخدم جملة الشرط if في البايثون لاتخاذ القرارات Decision Making . عادة ما تكون جمل الشرط ناتج عبارة expression او اكثر من نوع Boolean اي True او False.
هناك ثلاث حالات من جملة ال if .
- if
- if .. else
- if .. elif .. else
جملة if
قاعدة الكتابة Syntax
if الشرط: # الاوامر
يتم استخدامها اذا اردنا تنفيذ بعض الاوامر في حالة معينة او عند تحقق شرط معين
يكون الشرط في جملة ال if من نوع البيانات المنطقية true او false ويتم تكوينه عادة من اجراء عمليات المقارنة كالاتي:
x = 5 y = 8 if x < 10 : print("Hello 1 !!") # سيتم تنفيذ الكود هنا لان الشرط تحقق if 5 < y < 10 : print("Hello 2 !!") # سيتم تنفيذ الكود هنا لان الشرط تحقق if y == 15 : print("Hello 3 !!") # لن يتم تنفيذ الكود هنا لان الشرط لم يتحقق
شرح الكود:
في المثال الاول ال x قيمتها 5 و الشرط يسأل (هل ال x اصغر من 10) لذا الشرط يتحقق ويتم طباعة : Hello !!
المثال الثاني ال y قيمتها 8 والشرط يسأل (هل ال y اكبرمن ال 5 و اصغر من 15) لذا الشرط يتحقق ويتم طباعة : Hello !!
في المثال الاخير الشرط يسأل (هل ال y تساوي 15) لذا الشرط لن يتحقق و لن يتم طباعة : Hello !!
جملة if .. else
قاعدة الكتابة syntax
if الشرط: # الاوامر else: # الاوامر في حالة عدم تحقق الشرط الاول
يتم استخدامها اذا اردنا تنفيذ بعض الاوامر في حالة معينة او عند تحقق شرط معين و تنفيذ مجموعة اخرى من الاوامر في حالة ان لم يتحقق الشرط
تشغيل# مثال درجات الطلاب لو الدرجة اكثر من او يساوي 10 يكون ناجح لو اقل يكون راسب grade = 15 if grade >= 10: print("Success !!")# سيتم تنفيذ الكود هنا لان الشرط تحقق else: print("Fail !!")# لن يتم تنفيذ الكود هنا لان الشرط لم يتحقق
جملة if .. elif ..else
يتم استخدام هذة الجملة لتنفيذ الجمل التي تحتوي على اكثر من شرط
قاعدة الكتابة syntax :
if شرط: # الاوامر في حالة تحقق الشرط elif شرط اخر: # الاوامر في حالة عدم تحقق الشرط الاول وتحقق الشرط الثاني else: # الاوامر في حالة عدم تحقق اي من الشروط
مثلا لو درجة الطالب اقل من 10 يكون راسب و لو ما بين ال 10 و ال 20 يكون جيد و لو اعلى من 20 يكون ممتاز.
تشغيلgrade = 25; if grade < 10: print("Fail !!")# لن يتم تنفيذ الكود هنا لان الشرط لم يتحقق elif grade < 20 : print("Good !!") # لن يتم تنفيذ الكود هنا لان الشرط لم يتحقق else: print("Excellent !!") # الشرط هنا سيتم تنفيذه لان الشروط السابقة لم تتحقق
ملحوظة: لم نحتاج في الشرط الثاني ان يكون الشرط (grade > 10 && grade < 20)، واكتفينا بان (grade < 20) وذلك لان الشرط الاول متحقق بالفعل بسبب جملة ال if الاولى
يمكن زيادة عدد جملة ال elif لكي تغطي كل الحالات التي نريدها و يمكن عدم وضع ال else الاخيرة، لكن يجب ان تبدأ الجملة ب if مثل:
تشغيلgrade = 15 if grade < 10: print("Fail !!") elif grade < 20: print("Good !!") elif grade < 30 : print("Very Good !!") elif grade < 40: print("Excellent!!")
شكرا جزيلا على التوضيح