حلقه for چیست؟
به وسیله حلقه for میتوان یک loop جهت انجام یک سری کارهای تکراری ایجاد کرد.
Iteration یا تکرار == loop یا حلقهها
نحوه استفاده از حلقه for برای اعداد
در کد زیر ، اعداد درون یک لیست با استفاده از حلقه for چاپ می شوند.
نحوه استفاده از حلقه for برای رشتهها
در کد زیر ، المانهای یک رشته با استفاده از حلقه for چاپ می شوند.
هرگاه از _ در مقابل for استفاده شد به این معنی میباشد که از حروف داخل رشته یا لیست فقط به عنوان شمارنده استفاده میکنیم.
نحوه استفاده از عبارت break در حلقه for
در کد زیر، اعداد را در محدوده 10 تا 20 تعریف کردهایم. اما می خواهیم حلقه for زمانیکه x برابر با 15 شد، خاتمه یابد. یعنی اجرای بیشتر متوقف شود. برای این کار ، با بررسی شرط (x == 15) break را اعلام می کنیم. بنابراین به محض اینکه کد به عدد 15 رسید، برنامه را خاتمه می دهد.
نحوه استفاده از عبارت continue در حلقه for
در کد زیر، به وسیله عبارت continue تکرار فعلی حلقه for خاتمه مییابد اما به اجرای تکرارهای باقی مانده ادامه خواهد داد. ابتدا اعداد را محدوده 10 تا 20 تعریف کرده ایم. اما بین این عددها می خواهیم اعدادی را که به ۵ بخش پذیرند حذف کنیم. در این محدوده فقط 2 عدد (10،15) به 5 پخش پذیرند. بنابراین حلقه فقط برای اعداد 10 و 15 ، متوقف میشود و باقی اعدد را به عنوان خروجی چاپ می کند.
از Tupleها نیز می توان در حلقه for استفاده کرد.
برای دسترسی به تک تک آیتمهای داخل تاپل میتوان به جای item از دو متغیر a و b در حلقه for برای هر یک از آیتمهای داخل تاپل استفاده کرد.
دیکشنریها نیز نوعی دنباله میباشند که میتوان در داخل حلقه for استفاده کرد.
با استفاده از متد ()items در حلقه for، میتوان هم به کلید و هم به مقدار به صورت یک Tuple دسترسی پیدا کرد.
برای دسترسی به تک تک آیتمهای دیکشنری میتوان از روش Unpacking، در حلقه for استفاده کرد.
برای دسترسی به کلیدهای دیکشنری در حلقه for میتوان از متد ()keys استفاده کرد.
برای دسترسی به مقادیر دیکشنری در حلقه for میتوان از متد ()values استفاده کرد.
حلقههای تو در تو
در مبحث حلقهها میتوان به حلقههای تو در تو اشاره کرد، به این صورت که میتوان در داخل یک حلقه for یک حلقه for دیگر نوشت. یعنی ابتدا آیتم اول از دنباله موجود در حلقه اول وارد حلقه دوم شده و با تمام آیتمهای موجود در دنباله حلقه دوم عملیات مشخصی را انجام میدهد، سپس دوباره وارد حلقه اول شده آیتم دوم از دنباله حلقه اول وارد حلقه دوم میشود و تمام عملیات دوباره تکرار میشود. این کار تا انتهای آیتمهای دنباله اول ادامه پیدا میکند.
حلقه while چیست؟
به وسیله حلقه while میتوان یک loop جهت انجام یک سری کارهای تکراری ایجاد کرد. تفاوت حلقه while و حلقه for این است که به وسیله حلقه for در طول بررسی یک دنباله یک سری دستورات هم اجرا میشود، اما در حلقه while تا زمانی که یک شرط صدق میکند یک سری دستورات اجرا میشود.
ساختار حلقه while به صورت زیر میباشد.
در حلقه while پس از اینکه دستورات مورد نظر اجرا شد، باید یک گامشمار اضافه کنیم. تا زمانیکه مقدار این گامشمار به اندازه مقدار شرط مورد نظر شود. پس از آن از حلقه خارج میشود. اگر از این گامشمار استفاده نکنیم این حلقه تا ابد ادامه پیدا خواهد کرد.
نحوه استفاده از عبارت break در حلقه while
در کد زیر، می خواهیم حلقه تا زمانیکه letter برابر با m شد، اجرا شود و در نهایت پس از برابر شدن letter با m، اجرای حلقه while متوقف شود. به اصطلاح break اتفاق میافتد.
اگر در کد فوق print را قبل از break استفاده کنیم علاوه بر s و a حرف m هم print میشود.
نحوه استفاده از عبارت continue در حلقه while
در کد زیر، حلقه تا زمانیکه letter برابر با m شد، اجرا میشود و در نهایت پس از برابر شدن letter با m، عبارت continue فعال میشود و ادامه کد اجرا نمیشود و به ابتدای حلقه while میرود.
اگر در کد فوق، print را قبل از continue استفاده کنیم همه حروف چاپ میشوند زیرا در واقع دیگر دستوری بعد از continue وجود ندارد که اجرا نشود.
برای آشنایی بیشتر با حلقه for و حلقه while و نحوه کار با آنها میتوانید به دوره جامع آموزش زبان برنامهنویسی پایتون آکادمی رسا مراجعه کنید.