خارج شدن از حلقه با استفاده از break ،continue و pass

گاهی اوقات با وجود درست بودن شرط می‌خواهیم حلقه متوقف شود. سؤال اینجاست که چطور این کار را انجام دهید؟ با استفاده از کلمه کلیدی break حلقه را متوقف کرده و با استفاده از کلمه کلیدی continue می‌توان بخشی از حلقه را رد کرد و به مرحله بعد رفت. برنامه زیر نحوه استفاده از continue ،break و pass را نشان می‌دهد :

  1: print("Demonstrating the use of break\n");
  2: 
  3: for x in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10):
  4:     if (x == 5):
  5:         break;
  6: 
  7:     print("Number ", x);
  8: 
  9: print("\nDemonstrating the use of continue\n");
 10: 
 11: for x in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10):
 12:     if (x == 5):
 13:         continue;
 14: 
 15:     print("Number ", x);
 16: 
 17: print("\nDemonstrating the use of pass\n");
 18: 
 19: for x in (1, 2, 3, 4, 5, 6, 7, 8, 9, 10):
 20:     if (x == 5):
 21:         pass;
Demonstrating the use of break

Number  1
Number  2
Number  3
Number  4

Demonstrating the use of continue

Number  1
Number  2
Number  3
Number  4
Number  6
Number  7
Number  8
Number  9
Number  10

Demonstrating the use of pass

در این برنامه از حلقه for برای نشان دادن کاربرد دو کلمه کلیدی فوق استفاده شده است اگر به جای for از حلقه‌ while استفاده می‌شد نتیجه یکسانی به دست می‌آمد. همانطور که در شرط برنامه (خط 4) آمده است، وقتی که مقدار x به عدد 5 برسد، سپس دستور break اجرا (خط 5) و حلقه بلافاصله متوقف می‌شود، حتی اگر شرط x < 10 برقرار باشد. از طرف دیگر در خط 21 حلقه for فقط برای یک تکرار خاص متوقف شده و سپس ادامه می‌یابد. (وقتی مقدار x برابر 5 شود حلقه از 5 رد شده و مقدار 5 را چاپ نمی‌کند و بقیه مقادیر چاپ می‌شوند.

ممکن است این سوال برایتان پیش آمده باشد که کاربرد کلمه pass چیست؟ از این دستور زمانی استفاده می کنیم که در شرایطی خاص نیاز به انجام هیچ کاری نباشد! مثلا برای تعریف یک تابع خالی تا بعدا کد های آن نوشته شود. یا زمانی که بخواهیم همانند مثلا بالا، کدهای بدنه یک دستور شرطی و یا حلقه را بعدا بنویسیم، به کار می رود. حال شما برای درک بهتر، کلمه pass را از کد بالا حذف کرده و کد را اجرا کنید. مشاهده می کنید که به شما پیغام خطا نمایش داده می شود و از شما می خواهد که بدنه دستور if و for را مشخص کنید ولی اگر کلمه pass را دوباره بنویسید، این خطا نادیده گرفته و کد اجرا می شود.