بايثونوضع أكثر من شرط في الجملة if
بإمكانك أن تضع أكثر من شرط بداخل جملة الشرط باستخدام العامل and
أو or
.
العامل and
يستخدم في حال كنت تريد تنفيذ كود معين إذا كان جواب جميع الشروط الموضوعة يساوي True
.
العامل or
يستخدم في حال كنت تريد تنفيذ كود معين إذا كان جواب شرط واحد على الأقل يساوي True
.
في المثال التالي إذا تحقق كلا الشرطين الموضوعين في الجملة if
فإنه سيتم تنفيذ أمر الطباعة الموضوع فيها.
و في حال لم تتنفذ الجملة if
فإنه سيتم تنفيذ أمر الطباعة الموجود في الجملة else
.
المثال الأول
n = 14; # أكبر أو تساوي 0 و بذات الوقت أصغر أو تساوي 20 سيتم تنفيذ أمر الطباعة n إذا كانت قيمة if n >= 0 and n <= 20: print(n, "is accepted.") # else سيتم تنفيذ أمر الطباعة الموضوع في الجملة الشرطية if إذا لم تتنفذ الجملة الشرطية else: print(n, "is not accepted!")
النتيجة
نلاحظ أنه تم تنفيذ أمر الطباعة الموضوع في الجملة الشرطية if
لأن قيمة المتغير n
بين 0 و 20.
هنا مفسر الكود سأل نفسه سؤالين:
السؤال الأول: هل قيمة المتغير n
أكبر أو تساوي 0؟
فكان جواب الشرط الأول True
.
السؤال الثاني: هل قيمة المتغير n
أصغر أو تساوي 20؟
فكان جواب الشرط الثاني أيضاً True
.
بما أن كلا الإجابتان كانتا True
قام بتنفيذ أمر الطباعة.
في المثال التالي إذا تحقق أحد الشرطين الموضوعين فإنه سيتم تنفيذ أمر الطباعة.
إذاً هنا يكفي أن يتحقق أحد الشروط حتى يتم تنفيذ أمر الطباعة.
المثال الثاني
x = 2 # تساوي 1 أو 2 أو 3 سيتم تنفيذ أمر الطباعة x إذا كانت قيمة if x == 1 or x == 2 or x == 3: print(x, "is available.") # else سيتم تنفيذ أمر الطباعة الموضوع في الجملة الشرطية if إذا لم تتنفذ الجملة الشرطية else: print(x, "is not available!")
النتيجة
نلاحظ أنه تم تنفيذ أمر الطباعة الموضوع في الجملة الشرطية if
لأن قيمة المتغير x
تساوي 2.
هنا مفسر الكود سأل نفسه ثلاث أسئلة:
السؤال الأول: هل قيمة المتغير x
تساوي 1؟
فكان جواب الشرط الأول False
.
السؤال الثاني: هل قيمة المتغيرx
تساوي 2؟
فكان جواب الشرط الثاني True
.
السؤال الثالث: هل قيمة المتغيرx
تساوي 3؟
فكان جواب الشرط الثالث False
.
بما أن أحد الإجابات كان True
قام بتنفيذ أمر الطباعة.