البيانات الشرطية هي أوامر للتعامل مع القرارات، مما يجعلها مفهومًا أساسيًا للبرمجة. إنها تساعدك على تنفيذ أجزاء معينة من برنامجك بشكل انتقائي في حالة استيفاء بعض الشروط. في هذه المقالة، سنخبرك بكل ما تحتاج لمعرفته حول استخدام العبارات الشرطية المتعددة في بايثون. وسنعرض لك الكثير من الأمثلة لتوضيح آليات عمل كل شيء.
تتمتع لغة بايثون ببناء جملة بسيط وواضح، مما يعني أن الكود سهل القراءة والتفسير. هذا ينطبق بشكل خاص على العبارات الشرطية، والتي يمكن قراءتها تقريبًا مثل الجملة الإنجليزية. وهذا يجعل بايثون لغة رائعة التعلم للمبتدئين. بالنسبة لأولئك الجدد في لغة بايثون، فكر في الالتحاق بدورة PYTHON BASICS الخاصة بنا؛ ستبدأ رحلة البرمجة الخاصة بك وتمنحك مهارات أساسية قوية في لغة بايثون.
عبارة بايثون if
نقطة البداية للتعامل مع الشروط هي عبارة if
، والتي تتحقق مما إذا كان الشرط صحيحًا. إذا كان الأمر كذلك، فسيتم تنفيذ كتلة التعليمات البرمجية ذات المسافة البادئة مباشرةً أسفل عبارة if
. يجب أن يتم تقييم الشرط إما True
أو False
. إذا كنت ترغب في معرفة تفاصيل عبارات if
الخاصة ببايثون، فستجد المزيد في هذه المقالة حول مصطلحات بايثون للمبتدئين. يعد الجزء الثاني من مصطلحات بايثون للمبتدئين أيضًا أمرًا جديرًا بالقراءة إذا بدأت للتو في البرمجة.
عبارة if
في بايثون تأخذ الشكل التالي:
>>> if condition == True:
... print('Condition is True')
قبل أن نذهب أبعد من ذلك، دعونا نلقي نظرة على عوامل المقارنة. في بايثون، هناك ستة احتمالات:
- يساوي:
a == b
- لا يساوي:
a != b
- أقل من:
a < b
- أقل من أو يساوي:
a <= b
- أكبر من:
a > b
- أكبر من أو يساوي:
a >= b
لاحظ أن عامل المقارنة يساوي (==
) يختلف عن عامل التعيين (=
).
لنحاول الآن تقييم حالة نموذجية:
>>> temperature = 35
>>> temperature > 25
True
هنا، قمنا بتعيين درجة الحرارة temperature = 35. في السطر التالي، نقوم باختبار ما إذا كانت هذه القيمة أكبر من 25، مما يُرجع القيمة المنطقية True
. الآن دعونا نضع هذا في عبارة if
:
>>> temperature = 35
>>> if temperature > 25:
... print('Warm')
Warm
يتم تقييم الشرط على أنه صحيح، والذي يقوم بعد ذلك بتنفيذ الكتلة ذات المسافة البادئة (print('Warm')
). هذا المثال يعادل كتابة “إذا كانت درجة الحرارة أكبر من 25، فاطبع كلمة دافئ”. كما ترون من الكود، فهي تشبه الجملة المكتوبة تمامًا!
العوامل المنطقية
إذا أردنا ضم شرطين أو أكثر في نفس عبارة if
، فسنحتاج إلى عامل منطقي. هناك ثلاثة عوامل منطقية محتملة في بايثون:
and
– ترجعTrue
إذا كانت كلا العبارتين صحيحتين.or
– ترجعTrue
إذا كانت إحدى العبارات على الأقل صحيحة.not
– يعكس القيمة المنطقية؛ ترجعFalse
إذا كانت العبارة صحيحة، وTrue
إذا كانت العبارة خاطئة.
ولتنفيذ هذه الأمور، نحتاج إلى شرط ثانٍ للاختبار. لذلك، دعونا ننشئ متغيرًا آخر ونختبر ما إذا كان أعلى من العتبة:
>>> temperature = 35
>>> humidity = 90
>>> if temperature > 30 and humidity > 85:
... print('Hot and humid')
Hot and humid
يتطلب عامل التشغيل or
شرطًا واحدًا فقط ليكون صحيحًا. لإظهار ذلك، سنخفض درجة الحرارة ونستخدم عامل المقارنة or
:
>>> temperature = 20
>>> humidity = 90
>>> if temperature > 30 or humidity > 85:
... print('Hot, humid, or both')
Hot, humid, or both
لاحظ أن or
يتطلب شرطًا واحدًا فقط لتقييمه على أنه صحيح. إذا تم تقييم كلا الشرطين على أنه صحيح، فسيتم تنفيذ كتلة التعليمات البرمجية ذات المسافة البادئة الموجودة أدناه مباشرةً.
قد يبدو عامل التشغيل not
مربكًا بعض الشيء في البداية، لكنه يعكس قيمة الحقيقة للشرط. على سبيل المثال:
>>> not True
False
>>> not False
True
يمكننا استخدامه لاختبار ما إذا كانت درجة الحرارة أكثر برودة (أي ليست أكثر سخونة) من تلك العتبة:
>>> temperature = 15
>>> if not temperature > 20:
... print('Cool')
Cool
باستخدام هذه العناصر كعناصر بناء، يمكنك البدء في تجميع اختبارات أكثر تعقيدًا:
>>> temperature = 25
>>> humidity = 55
>>> rain = 0
>>> if temperature > 30 or humidity < 70 and not rain > 0:
... print('Dry conditions')
Dry conditions
عبارة if
هذه تعادل “إذا كانت درجة الحرارة أكبر من 30 (أي تقييم خاطئ) أو الرطوبة أقل من 70 (تقييم صحيح) ولا تمطر (تقييم صحيح)، ثم اكتب …”. في الكود، قد يبدو الأمر كما يلي:
>>> if False or True and True:
... print('Dry conditions')
Dry conditions
عبارات بايثون if-elif-else
إذًا، ماذا يحدث عندما يتم تقييم الشرط في عبارة if
إلى False
؟ بعد ذلك، يمكننا التحقق من شروط متعددة عن طريق إضافة عبارة else-if
، والتي يتم اختصارها إلى elif
في بايثون. فيما يلي مثال لاستخدام elif
لتحديد فئات درجات الحرارة المختلفة:
>>> temperature = 25
>>> if temperature > 30:
... print('Hot')
>>> elif temperature > 20 and temperature <= 30:
... print('Warm')
Warm
لاحظ استخدام عامل المقارنة >
في عبارة if
و<=
في عبارة elif
. العامل الثاني يعني إذا كانت درجة الحرارة 30 بالضبط، فهي تنتمي إلى فئة “Warm”. الخطوة الأخيرة هي إضافة else
في النهاية، والذي يلتقط كل شيء آخر غير محدد في شروط if
وelif
.
>>> temperature = 25
>>> if temperature > 30:
... print('Hot')
>>> elif temperature > 20 and temperature <= 30:
... print('Warm')
>>> else:
... print('Cool')
Warm
تتعامل عبارة else
النهائية مع أي شيء آخر لا يندرج ضمن العبارات الأخرى. في هذه الحالة، temperature <= 20
ستطبع كلمة “Cool”. لاحظ أيضًا أنه يمكن كتابة عبارة elif
بشكل أكثر إيجازًا في بايثون (في هذا المثال، 20 < temperature <= 30
).
إذا أردت إنشاء المزيد من الفئات، يمكنك إضافة المزيد من عبارات elif
. تعتبر عبارات elif
و else
اختيارية. ولكن من الجيد دائمًا أن تنتهي بعبارة else
، للتأكد من أن أي شيء غير متوقع لا يزال يتم التقاطه. يمكن أن يكون هذا مفيدًا لتصحيح أخطاء العبارات الشرطية الأكثر تعقيدًا. على سبيل المثال، إذا كنا نقيس كمية المطر بالملليمتر في الساعة، فيمكننا أن نفعل شيئًا كهذا:
>>> rain = -10
>>> if rain > 0 and rain <=3:
... print('Light rain')
>>> elif rain > 3 and rain <=8:
... print('Moderate rain')
>>> elif rain > 8:
... print('Heavy rain')
>>> else:
... print('Something unexpected happened!')
Something unexpected happened!
وجود عبارة else
النهائية هنا سوف ينبهك إذا كان هناك خطأ غير متوقع في مكان ما، على سبيل المثال. قيمة سلبية.
الآن بعد أن تعرفت على شروط متعددة في بايثون …
الآن يجب أن يكون لديك كل ما تحتاج إلى معرفته لبدء تنفيذ عبارات شرطية متعددة في بايثون. تم تصميم هذه الأمثلة لتظهر لك أساسيات كيفية عمل هذه العبارات، لذا اتخذ الخطوة التالية وقم بتوسيع ما تعلمته هنا. على سبيل المثال، حاول دمج عبارات if-elif-else
في حلقة. حدد قائمة من القيم، وقم بالتمرير عبرها، واختبر قيمها.
اكتشاف المزيد من بايثون العربي
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.