الجمل الشرطية في بايثون هو الدرس الحالي و لا تنسى الإطلاع على الدرس السابق الذى تناولنا فيه التعامل مع الصفوف والقاموس والمجموعات فى بايثون.
حيث عرفنا كيفية التعامل مع البيانات بعدة طرق وأشكال مختلفة، فعليك فقط إختيار الطريقة الأنسب لك عند كتابة الكود.
وفى هذا الدرس سوف نتعامل الجمل مع الشرطية فى بايثون وكيفية التعامل معها.
جدول المحتويات
ما هى الجمل الشرطية في بايثون
الجمل الشرطية في بايثون تعتمد فى كتابتها على (if and else) وهم عبارة عن كلمات محجوزة (Reserved words).
Reserved words كلمات تتكون منها لغة البرمجة لا يمكن إستخدامها فى تسمية متغير ، تستخدم فقط في الوضع الذى وضعت لأجله.
ببساطة هناك شرط إذا تحقق حدث رد فعل وإذا لم يتحقق يحدث رد فعل آخر.
لكن ما هو الشرط وكيف يتم كتابته وكتابة رد الفعل فى الكود وهذا ما سوف نتكلم عنه الآن!
التعابير الشرطية Conditional Expressions
الشروط التي تعتمد عليها الجمل الشرطية تسمى التعابير الشرطية وهى تعتمد على تعابير رياضية logical mathematical conditions مثل:
- يساوي (Equal (a==b
- لا يساوي (Not Equal (a!=b
- أصغر من (less than (a<b
- أصغر من أو يساوي (less than or equal(a<=b
- أكبر من (great than (a>b
- أكبر من أو يساوي (great than or equal (a>=b
المسافات فى بايثون indentation in python
الإهتمام بالمسافات في بايثون شيء مهم للغاية والمثال التالي سوف يوضح الفرق
فى المثال الأول بعد if تم أخذ عدد 4 مسافات أو الضغط على tap من الكيبورد
ليفهم ال interpreter أن جملة ال print تحت مظلة ال if
فى المثال الثانى يوجد خطأ error لأنه لم يتم الضغط على tap ولم يفهم ال interpreter أن جملة ال print تحت مظلة ال if والif تحتاج لرد فعل كما ذكرنا وهو ينتظر ذلك الرد ولم يجده لذلك يصدر إشعار بوجود خطأ.
IndentationError: expected an indented block
الكلمة المحجوزة elif فى بايثون
هذه الكلمة المحجوزة تعني إن لم يتم تحقيق الشرط الأول فى الif أُنظر لهذا الشرط والمثال التالي يوضح ذلك:
a=200 b=200 :if a>b (" print("a great than b :elif b==a ("print("a equal b
الكلمة المحجوزة else فى بايثون
تعني إذا لم يتحقق الشرط فى if وكذلك الشرط فى elif نفذ ذلك مباشرة دون التحقق من شرط آخر.
ويمكنها التواجد مع if فقط أيضاً ليس بالضرورة تواجد if and elif
a=200 b=300 :if a>b ("print("a great than :else ("print("b great than a
كتابة الجمل الشرطية في بايثون بإختصار
- كتابة if بإختصار
a=200 b=100 ("if a>b: print("A great than b
- كتابة if and else بإختصار
a=200 b=300 ("print("=") if(a==b) else print("b>a") if(b>a) else print("b<a
عند كتابة أكثر من شرط بإختصار لا يتم كتابة elif بل يتم التعامل بــ if and else
ويتم التعامل بطريقة
رد الفعل ثم شرط ثم رد فعل آخر ثم شرط ثم رد فعل آخير إذا لم يتحقق الشرطان السابقان.
العوامل المنطقية في الجمل الشرطية في بايثون (logical operator)
العوامل المنطقية logical operator فى بايثون تتمثل فى إستخدام (or, and )
مثال على إستخدام ال and operator
والتي تستخدم لمقارنة شرطين ويجب أن يكون كلاهما صحيحاً لتكون النتيجة true
وإن كان إحدهما فقط خطأ تكون النتيجة false
a=100 b=50 c=200 :if a > b and c > a (" print("Both conditions are True
مثال على إستخدام ال or operator
والتي تستخدم لمقارنة شرطين ويجب أن يكون إحدهما صحيحاً لتكون النتيجة true
a=100 b=50 c=200 :if a > b or c = a ("print("only one condition is true