الشروط في بايثون
ترجمة شروط: تعني conditions في اللغة الإنجليزية. و نستخدم الشروط في بايثون لتحديد طريقة عمل البرنامج.
كما أنه يمكنك وضع أكثر من شرط condition او العدد الذي تريده من الشروط في البرنامج الواحد , وايضا نستطيع وضع الشرط condition بداخل شرط condition او الشروط بداخل بعضها البعض أيضاً.
عزيزي المتعلم لا تقلق ان لم تفهم شيء عن الشروط conditions ولايهمط سترى .
الصيغة العامة لكتابة جمل الشرط في بايثون
كتابة الشروط (Syntax) او الصيغة العامة لكتابة الشروط conditions في بايثون تكون بالشكل التالي :
if condition: # إذا كان الشرط condition صحيحاً نفذ الكود الموجود هنا
elif condition: # إذا كان الشرط condition صحيحاً نفذ الكود الموجود هنا
else: # إذا لم يتحقق أي شرط condition نفذ الكود الموجود هنا
ما يجب أن تعرفه عزيزي المتعلم أنك لست بحاجة إلى إستخدام جمل الشرط condition الثلاثة في كل شرط تضعه في برنامجك , و لكنك ياعزيزي مجبر على إستخدام جملة الشرط if
مع أي شرط .
تابع مع سجين القدر الدرس الى الاخير فانت محظوظ جدا حتى تتعلم جميع طرق كتابة الشروط في بايثون .
الجمل الشرطية في بايثون
الجملة | الإستخدام |
---|---|
IF Statement | if في لغتنا العربية تعني " إذا " كما تعلمنا ذلك قبل شوي .و نستطيع استخدامها ان كنت تبغى تنفيذ كود بسيط حسب شرط بسيط . |
Else Statement | else في لغتنا العربية يقصد بها "غير ذلك او أي شيء آخر ".و نستطيع استخدامها ان كنا تريد تنفيذ كود بسيط في حال كان الشرط الذي يسبقها غير صحيح او انه لم يتحقق . يجب أن تكون دائماً في الأخير, لأننا نستخدمها في حال لم يتم تنفيذ أي من الجمل الشرطية التي تسبقها . |
Else IF Statement | elif يجب أيضا أن نستخدمها إذا كنا نريد وضع أكثر من إحتمال ( أي أكثر من شرط condition ).الجملة أو الجمل الـ elif مكانها في الوسط, أي بين الجملتين if و else . |
الجملة الشرطية if
if
في لغتنا العربية تعني " إذا ".
و نستطيع استخدامها فقط في حال إذا if كنت تريد تنفيذ كود او شفره معينه حسب شرط معين .
هذا التمرين الأول يوضح فكره جملة الشرط if
•إذا كانت قيمة المتغير Saddam
أكبر من 25 سيتم طباعة الجملة: Saddam is bigger than 25
.
Saddam = 0 if Saddam > 25: print('Saddam is bigger than 25')
•المخرجات عند التنفيذ ستكون بالشكل التالي .
•هنا قال في نفسه مره واحده : هل قيمة المتغير Saddam
أكبر من 25 ؟
فكان جوابها كلا ( false
) , لذلك لم تنفذ أمر الطباعة الموجود في الجملة الشرطية.
مثال آخر يوضح فكره جملة الشرط if في بايثون
•إذا كانت قيمة المتغير Saddam
أكبر من 5 سيتم طباعة الجملة: Saddam is bigger than 5
.
Saddam = 30 if Saddam > 5:
print('Saddam is bigger than 5')
•سنحصل على المخرجات التالية عند التنفيذ .
•هنا قال في نفسه مره واحده : هل قيمة المتغير Saddam
أكبر من 5؟
فكان جوابه نعم (true
), لذلك نفذت جمله الطباعة الموجود في الجملة الشرطية if .
الجملة الشرطية else
الجملة else
في لغتنا العربية يقصد بها " غير ذلك او أي شيء آخر ".
و هي تستخدم فقط في حال كنا نريد تنفيذ كود معين في حال كانت نتيجة جميع الشروط التي قبلها تساوي false
.
يجب أن تضها ايها المتعلم دائماً في الأخير, لأنها تستخدم في حال لم يتم تنفيذ أي جملة شرطية قبلها.
إذاً, إذا نفذ البرنامج الجملة if
أو else if
فإنه سيتجاهل الجملة else
.
و إذا لم ينفذ أي جملة من الجمل if
و else if
فإنه سينفذ الجملة else
.
التمرين الأول في الجملة الشرطية else
•إذا كانت قيمة المتغير Saddam
تساوي 5 سيتم طباعة الجملة: S
addam is equal 5
.
•إذا كانت قيمة المتغير S
لا تساوي 5 سيتم طباعة الجملة: Saddam is not equal 5
.
Saddam = 5 if Saddam == 5: print('Saddam is equal 5') else: print('Saddam is not equal 5')
•سنحصل على النتيجة التالية عند التشغيل.
•هنا سأل نفسه مره واحده : هل قيمة المتغير Saddam تساوي 5؟
فكان جواب الشرط نعم ( true
) , لذلك نفذ أمر الطباعة الموجود في الجملة if
.
مثال آخر
•إذا كانت قيمة المتغير Sad
تساوي 5 سيتم طباعة الجملة: Sad is equal 5
.
•إذا كانت قيمة المتغير S
لا تساوي 5 سيتم طباعة الجملة: Sad is not equal 5
.
Sad = 20 if Sad == 5: print('Sad is equal 5') else: print('Sad is not equal 5')
•سنحصل على المخرج التالية عند التنفيذ .
•هنا سأل نفسه التالي: هل قيمة المتغير Sad
تساوي 5؟
فكان جواب الشرط كلا ( false
) , لذلك نفذ أمر الطباعة الموجود في الجملة else
.
الجملة الشرطية elif
الجملة elif
تستخدم إذا كنت تريد وضع أكثر من إحتمال ( أي أكثر من شرط ).
جملة أو جمل الـ elif
يوضعون في الوسط, أي بين الجملتين if
و else
.
مثال
•إذا كانت قيمة المتغير number
تساوي 1 سيتم طباعة الكلمة: one
.
•إذا كانت قيمة المتغير number
تساوي 2 سيتم طباعة الكلمة: two
.
•إذا كانت قيمة المتغير number
تساوي 3 سيتم طباعة الكلمة: three
.
•إذا كانت قيمة المتغير number
أكبر أو تساوي 4 سيتم طباعة الجملة: four or greater
.
•إذا كانت قيمة المتغير number
أصغر من 0 سيتم طباعة الجملة: negative number
.
number = 3 if number == 1: print('one') elif number == 2: print('two') elif number == 3: print('three') elif number >= 4: print('four or greater') else: print('negative number')
•سنحصل على المخرج التالي عند التنفيذ .
•هنا سأل نفسه التالي: هل قيمة المتغير number
تساوي 1؟
فكان جواب الشرط كلا ( false
) , فانتقل إلى الشرط الذي يليه.
•ثم سأل نفسه التالي: هل قيمة المتغير number
تساوي 2؟
فكان جواب الشرط كلا ( false
) , فانتقل إلى الشرط الذي يليه.
•ثم سأل نفسه التالي: هل قيمة المتغير number
تساوي 3؟
فكان جواب الشرط هذه المرة نعم ( true
) , فقام بتنفيذ أمر الطباعة الموجود في الجملة الشرطية الثالثة, ثم تجاوز جميع جمل الشرط التي أتت بعده.
أفكار و أساليب أخرى لوضع الشروط في بايثون
طرق وضع الشروط في بايثون Conditions عديدة و متنوعة في بايثون او باي لغة اخرى , و يمكننا وضع شروط بداخل بعضها و يسمى ذلك Nested Conditional.
كما يمكنك عزيزي المتعلم وضع أكثر من شرط بداخل جمل الشرط if
أو else if
باستخدام العوامل المنطقية operators logical.
وضع أكثر من شرط في الجملة if في بايثون
بإمكانك عزيزي المتعلم أن تضع أكثر من شرط بداخل جملة الشرط باستخدام العامل and
أو or
.
العامل and
نستخدمه في حال كنت تريد تنفيذ كود معين إذا كان جواب جميع الشروط الموضوعة يساوي true
.
العامل or
نستخدمه في حال كنت تريد تنفيذ كود معين إذا كان جواب شرط واحد على الأقل يساوي true
.
التمرين الأول يوضح فكره وضع أكثر من شرط في الجملة الشرطية if في بايثون .
•إذا كانت قيمة المتغير saddam
بين 0 و 20 إطبع الجملة: acceptable number
.
saddam = 14; if saddam >= 0 and saddam <= 20: print("acceptable number")
•سنحصل على المخرج التالي عند التنفيذ .
•نلاحظ أنه قد تم تنفيذ أمر الطباعة لأن قيمة المتغير saddam
بين 0 و 20
•هنا سأل نفسه مرتين .
•المره الأولى : هل قيمة المتغير saddam أكبر أو تساوي 0؟
فكان جواب الشرط الأول true
.
•في المره الثانيه : هل قيمة المتغير saddam أصغر أو تساوي 20؟
فكان جواب الشرط الثاني أيضاً true
.
•بما أن كلا الجوابين كانا true
قام بتنفيذ أمر الطباعة.
تمرين 2
•إذا كانت قيمة المتغير saddam بين 0 و 20 إطبع الجملة: acceptable number
.
saddam = 26; if saddam >= 0 and saddam <= 20: print('acceptable number')
•سنحصل على المخرج التالي عند التنفيذ .
•نلاحظ أنه لم يتم تنفيذ أمر الطباعة لأن قيمة المتغير saddam ليست بين 0 و 20
•هنا سأل نفسه مرتين .
•في المره الأولى : هل قيمة المتغير saddam أكبر أو تساوي 0؟
فكان جواب الشرط الأول true
.
•في المره الثانيه : هل قيمة المتغير saddam أصغر أو تساوي 20؟
فكان جواب الشرط الثاني false
.
•بما أن واحداً من الجوابين لم يكن true
لم ينفذ دالة الطباعة.
تمرين أخر أيضا
•إذا كانت قيمة المتغير saddam تساوي 1 أو 2 أو 3 إطبع الجملة: you choose a valid number
.
saddam = 2 if saddam == 1 or saddam == 2 or saddam == 3: print('you choose a valid number')
•سنحصل على المخرج التالي عند التنفيذ .
•نلاحظ أنه قام بتنفيذ أمر الطباعة لأن قيمة المتغير saddam تساوي 2
•هنا سأل كان سيسأسل نفسه ثلاثة مرات لأنه يوجد ثلاث شروط, لكنه سأل نفسه سؤالين فقط.
•في المره الأولى : هل قيمة المتغير saddam تساوي 1؟
فكان جواب الشرط الأول false
فانتقل للشرط الذي يليه.
•في المره الثانيه : هل قيمة المتغير saddam تساوي 2؟
فكان جواب الشرط الثاني true
.
•بما أن واحداً من الأجوبة كان true
نفذ مباشرةً أمر الطباعة و لم ينظر حتى للشرط الأخير.
وضع شروط بداخل شرط في بايثون
تستطيع وضع الشروط بداخل بعضها عزيزي المتعلم , و يمكنك وضع العدد الذي نريده من الشروط .
في البرامج الفعلية يقوم المبرمج بوضع العديد من الشروط بداخل بعضها, و ذلك حسب الفكرة التي يريد تنفيذها في برنامجه, و سنعطيك مثال بسيط يعلمك كيف تفكر و تحلل.
مثال يوضح طريقة وضع شرط بداخل شرط في بايثون
•في البداية عندنا متغير يمثل الجنس إسمه sex
و متغير يمثل العمر إسمه age
.
sex = 'female' age = 14 if sex == 'male': print('Gender: male') if age <= 21: print('he is a young boy'); elif sex == 'female': print('Gender: female') if age <= 21: print('she is a young girl')
•سنحصل على المخرج التالي عند التنفيذ .
she is a young girl
•هنا سأل نفسه التالي: هل قيمة المتغير sex
تساوي male
؟
فكان جواب الشرط false
, فانتقل إلى جملة الشرط الثانية elif
.
•هنا سأل نفسه التالي: هل قيمة المتغير sex
تساوي female
؟
فكان جواب الشرط true
, فقام بتنفيذ دالة الطباعة الموجودة فيها, فطبع الجملة Gender: female
.
•ثم وجد شرطاً آخر بداخل الشرط السابق, فسأل نفسه التالي: هل قيمة المتغير age
أصغر أو تساوي 21؟
فكان جواب الشرط true
, فقام بتنفيذ دالة الطباعة الموجودة فيها, فطبع الجملة she is a young girl.
في الدرس التالي سوف تتعرف على الحلقات في بايثون
الدرس السابق : العوامل في بايثون.
الدرس التالي : الحلقات في بايثون .