حلقه های while
یک شرط if تنها یک بار بررسی می شود، در صورتی که شرط بر قرار باشد true و در صورت عدم برقراری False خواهد بود. یک حلقه while نیز مشابه است، اما تنها تفاوتش این است که می تواند بیش از یک بار این شرط را بررسی و اجرا کند. قطعه کد گنجانده شده بعد از شرط همچنین می تواند به تعداد بی شمار نیز اجرا شود، زمانی که شرط نعبیه شده صحیح باشد. زمانی که شرط را نقض می کند با مقدار False رو به رو شده و از حلقه خارج خواهد شد. در زیر یک نمونه از حلقه While را مشاهده می کنید که شامل یک متغیر است، این حلقه تا زمانی ادامه می یابد تا مقدار i از 1 به 5 برسد و در آن زمان حلقه شکسته خواهد شد.
i = 1
while i <=5:
print(i)
i = i + 1
print("Finished!")
خروجی:
>>>
1
2
3
4
5
Finished!
>>>
نکته: کد در بدنه یک حلقه زمانی بارها اجرا می شود. به این حالت تکرار یا iteration می گویند. حلقه بی نهایت نوع خاصی از حلقه است؛ که هرگز متوقف نمی شود و شرایط آن همیشه درست است. یک مثال از یک حلقه بی نهایت:
while 1==1:
print("In the loop")
این برنامه به طور نامحدود "In the loop" را چاپ خواهد کرد. نکته: می توانید با زدن کلید های Ctrl + C اقدام به توقف و قطع ادمه اجرا کد کنید.
دستور break در پایتون
برای پایان دادن به یک حلقه در میانه اجرای کد و یا هنگامی که می خواهید با شرط های دیگر از حلقه خارج شوید می توانید از دستور break استفاده کنید. هنگامی که کد در حالت اجراست، با رو به رو شدن با دستور break حلقه شکسته شده و از آن خارج خواهد شد.
i = 0
while 1==1:
print(i)
i = i + 1
if i >= 5:
print("Breaking")
break
print("Finished")
خروجی:
>>>
0
1
2
3
4
Breaking
Finished
>>>
نکته: استفاده از دستور break در خارج از یک حلقه باعث ایجاد خطا در برنامه خواهد شد!
دستور continue در پایتون
یکی دیگر از دستور های پایتون که می توان در داخل یک حلقه استفاده کرد continue نام دارد. بر خلاف break، این دستور به ابتدای حلقه اجرایی باز می گردد، به جای آنکه حلقه را بشکند و متوقف شود.
i = 0
while True:
i = i +1
if i == 2:
print("Skipping 2")
continue
if i == 5:
print("Breaking")
break
print(i)
print("Finished")
خروجی:
>>>
1
Skipping 2
3
4
Breaking
Finished
>>>
در واقع دستور continue از وضعیت فعلی حلقه خارج و حالت بعد را ادامه می دهد. نکته: استفاده از دستور continue در خارج از حلقه باعث ایجاد خطا می شود.