مقدمة
يُتيح استخدام حلقات التكرار for و while في بايثون إمكانية تكرار المهام تلقائيًا وبكفاءة. تُعدّ هذه الحلقات من البنى الأساسية في بايثون، حيث تُمكّنك من التكرار على عناصر مثل القوائم والصفوف والسلاسل النصية، أو تنفيذ جزء من التعليمات البرمجية بشكل متكرر بناءً على شرط مُحدد.
مع ذلك، توجد حالات تحتاج فيها إلى مزيد من التحكم في مسار حلقات التكرار. على سبيل المثال، قد تواجه موقفًا تحتاج فيه إلى الخروج من حلقة تكرار قبل الأوان، أو تخطي التكرار الحالي، أو ببساطة إنشاء عنصر نائب لكتابة كود لاحق. توفر لغة بايثون ثلاث عبارات قوية للتعامل مع هذه الحالات: break و continue و pass.
- تتيح لك عبارة break الخروج من حلقة تكرارية تمامًا إذا تم استيفاء شرط معين، مما يؤدي فعليًا إلى إيقاف تنفيذ الحلقة.
- تتيح لك عبارة break الخروج من حلقة تكرارية تمامًا إذا تم استيفاء شرط معين، مما يؤدي فعليًا إلى إيقاف تنفيذ الحلقة.
- عبارة pass هي عامل فارغ. تُستخدم كعنصر نائب في الحلقات، والدوال، والفئات، أو الشروط حيث يكون الكود مطلوبًا نحويًا ولكن ليس لديك ما يتم تنفيذه.
إن فهم هذه العبارات واستخدامها يُحسّن بشكل كبير قدرتك على إدارة تدفق التحكم في الحلقات، مما يجعل شفرتك البرمجية أكثر كفاءة وأسهل قراءة. في الأقسام التالية، سنستعرض أمثلة عملية لكيفية استخدام عبارات break وcontinue وpass في حلقات بايثون.
المتطلبات الأساسية
يجب تثبيت بايثون 3 وبيئة تطوير على جهاز الكمبيوتر أو الخادم. لنفترض أنك لم تُنشئ بيئة تطوير. في هذه الحالة، يمكنك مراجعة دليل التثبيت والإعداد لإعداد بيئة تطوير بايثون محلية على خادمك، بما يتناسب مع نظام التشغيل لديك (أوبونتو، سنت أو إس، ديبيان، إلخ).
بيان فاصل
في بايثون، تسمح لك عبارة break بالخروج من حلقة تكرارية عند تفعيل شرط خارجي. ضع عبارة break في كتلة التعليمات البرمجية أسفل عبارة الحلقة، عادةً بعد عبارة الشرط if.
دعونا نلقي نظرة على مثال يستخدم عبارة break في حلقة for:
number = 0
for number in range(10):
if number == 5:
break # break here
print('Number is ' + str(number))
print('Out of loop')تم تهيئة رقم المتغير في هذا البرنامج الصغير إلى 0. ثم، إذا كان رقم المتغير أقل من 10، فسيتم إنشاء حلقة for.
في حلقة التكرار "for"، توفر عبارة "if" شرطًا لتوقف الحلقة إذا كان المتغير "number" يساوي العدد الصحيح 5. لمزيد من المعلومات حول استخدام حلقة التكرار "for"، يمكنك الرجوع إلى هذا الدرس التعليمي حول استخدام حلقة التكرار "for()" في بايثون.
يوجد داخل الحلقة أيضًا عبارة print() التي يتم تنفيذها مع كل تكرار للحلقة for حتى تنكسر الحلقة، لأنها بعد عبارة break.
دعونا نضع عبارة print() النهائية خارج حلقة for حتى نعرف متى نكون خارج الحلقة.
عندما تقوم بتشغيل هذا الكود، سوف تحصل على الناتج التالي:
Output
Number is 0
Number is 1
Number is 2
Number is 3
Number is 4
Out of loopيوضح هذا أن الحلقة تنقطع عندما يتم تقييم العدد الصحيح إلى 5، كما يُطلب من البرنامج أن يفعل باستخدام عبارة break.
تتسبب عبارة break في خروج البرنامج من الحلقة.
استمرار البيان
تسمح لك عبارة الاستمرار بتخطي جزء الحلقة الذي يُفعّل فيه شرط خارجي، مع استمرار الحلقة. تُقاطع التكرارات الحالية للحلقة، لكن البرنامج يعود إلى بدايتها.
سيتم وضع عبارة continue في كتلة التعليمات البرمجية أسفل عبارة loop، وعادةً ما تكون بعد عبارة شرطية if.
باستخدام نفس برنامج حلقة التكرار في قسم عبارة break أعلاه، سنستخدم عبارة continue بدلاً من عبارة break:
number = 0
for number in range(10):
if number == 5:
continue # continue here
print('Number is ' + str(number))
print('Out of loop')الفرق بين استخدام عبارة continue بدلاً من عبارة break هو أن الكود الخاص بنا يستمر على الرغم من المقاطعة عندما يتم تقييم المتغير number إلى 5. دعنا نفحص الناتج لدينا:
Output
Number is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 6
Number is 7
Number is 8
Number is 9
Out of loopهنا، لا يظهر الرقم 5 مطلقًا في الإخراج، ولكن تستمر الحلقة بعد تلك النقطة لطباعة الأسطر الخاصة بالأرقام من 6 إلى 10 قبل الخروج من الحلقة.
يمكنك استخدام عبارة continue لتجنب الكود الشرطي المتداخل بشكل عميق أو لتحسين الحلقة عن طريق إزالة العناصر التي تريد تخطيها.
تتسبب عبارة الاستمرار في قيام البرنامج بتخطي عناصر معينة تظهر في حلقة ثم الاستمرار في بقية الحلقة.
بيان النجاح
عند تفعيل شرط خارجي، تسمح لك عبارة المرور بمعالجة الشرط دون التأثير على الحلقة بأي شكل من الأشكال. يستمر تنفيذ جميع التعليمات البرمجية ما لم يحدث فشل أو عبارة أخرى.
كما هو الحال مع العبارات الأخرى، سيتم وضع عبارة pass في كتلة التعليمات البرمجية أسفل عبارة الحلقة، عادةً بعد عبارة الشرط if.
باستخدام نفس كتلة التعليمات البرمجية أعلاه، دعونا نستبدل عبارة break أو continue بعبارة pass:
number = 0
for number in range(10):
if number == 5:
pass # pass here
print('Number is ' + str(number))
print('Out of loop')بعد عبارة الشرط if، تخبر عبارة pass البرنامج بمواصلة تنفيذ الحلقة وتجاهل أن المتغير number يتم تقييمه إلى 5 أثناء إحدى تكراراته.
قم بتشغيل البرنامج واحصل على الناتج التالي:
Output
Number is 0
Number is 1
Number is 2
Number is 3
Number is 4
Number is 5
Number is 6
Number is 7
Number is 8
Number is 9
Out of loopباستخدام عبارة المرور في هذا البرنامج، ستلاحظ أن البرنامج يُنفَّذ تمامًا كما لو لم تكن عبارة الشرط موجودة فيه. تُخبر عبارة المرور البرنامج بتجاهل الشرط ومواصلة تنفيذه كالمعتاد.
يمكن لعبارة المرور إنشاء فئات بسيطة، أو أن تعمل كعنصر نائب عند العمل على كود جديد والتفكير على مستوى خوارزمي قبل وضع التفاصيل.
نتيجة
تتيح لك عبارات break وcontinue وpass في Python استخدام حلقات for وwhile بشكل أكثر فعالية في الكود الخاص بك.









