برنامه نویسی ۱۳۵۹۸ بازدید

پیش از این، در مطلب «حلقه for در پایتون — به زبان ساده»، به بحث دستورات کنترلی و حلقه for پرداخته شد. حلقه while در پایتون، یکی دیگر از انواع دستورات کنترلی است که آشنایی با آن و درک تفاوت این نوع حلقه با حلقه for بسیار حائز اهمیت است.  همانطور که در مطلب حلقه for نیز بیان شد، «حلقه‌ها» (Loops) در برنامه‌نویسی برای تکرار کردن یک بلوک خاص از کد مورد استفاده قرار می‌گیرند. در این مطلب، روش ساخت حلقه while در پایتون آموزش داده خواهد شد.

حلقه while در پایتون

حلقه while در پایتون برای تکرار کردن یک بلوک از کد تا هنگامی که عبارت تست (شرط) صحیح باشد، مورد استفاده قرار می‌گیرد. معمولا از این حلقه‌ها هنگامی استفاده می‌شود که تعداد تکرارها از پیش معلوم نیست.

نحو حلقه while در پایتون

while test_expression:
    Body of while

در حلقه while، عبارت تست (شرط) ابتدا چک می‌شود. بدنه حلقه تنها در صورتی اجرا می‌شود که حاصل ارزیابی test_expression برابر با True باشد. پس از یک تکرار، عبارت تست مجددا بررسی می‌شود. فرایند تا جایی ادامه پیدا می‌کند که حاصل ارزیابی test_expression برابر با False باشد. در پایتون، بدنه حلقه while از طریق «دندانه‌گذاری» (Indentation) شناسایی می‌شود. بدنه با دندانه آغاز می‌شود و اولین خط بدون تورفتگی (دندانه)، نشان‌گر پایان حلقه است. پایتون هر مقدار غیر صفری را به عنوان True شناسایی می‌کند. None و صفر به عنوان False تفسیر می‌شوند.

فلوچارت حلقه while

حلقه while در پایتون -- به زبان ساده

مثالی از حلقه while در پایتون

در ادامه، مثالی از حلقه while در پایتون ارائه شده است.

# Program to add natural
# numbers upto 
# sum = 1+2+3+...+n

# To take input from the user,
# n = int(input("Enter n: "))

n = 10

# initialize sum and counter
sum = 0
i = 1

while i <= n:
    sum = sum + i
    i = i+1    # update counter

# print the sum
print("The sum is", sum)

خروجی حاصل از اجرای برنامه بالا، به صورت زیر خواهد بود.

Enter n: 10
The sum is 55

در برنامه بالا، عبارت تست تا هنگامی «درست» (True) خواهد بود که متغیر شمارنده (Counter Variable)، یعنی i، کوچکتر یا مساوی n باشد (۱۰ در برنامه بالا). در هر تکرار از حلقه، نیاز به افزایش متغیر شمارنده در بدنه حلقه است. این مسأله بسیار مهمی است که متاسفانه برخی از برنامه‌نویسان تازه‌کار آن را فراموش می‌کنند. انجام چنین کاری منجر به ایجاد حلقه‌های بی‌پایان یا حلقه‌های نامتناهی می‌شود. در نهایت، در حلقه‌ای که به درستی عمل کند و بی‌پایان نیز نباشد، نتایج در خروجی نمایش داده می‌شوند.

حلقه while با else

مانند حلقه for، می‌توان حلقه while را نیز با بلوک else ترکیب کرد. بخش else در صورتی اجرا می‌شود که حاصل ارزیابی شرط حلقه while برابر با False باشد. حلقه while  با یک دستور break متوقف می‌شود. در این شرایط، بخش else نادیده گرفته می‌شود. بنابراین، بخش else در صورتی اجرا می‌شود که هیچ break به وقوع نپیوندد و شرط false باشد. در ادامه، مثالی از این موضوع ارائه شده است.

# Example to illustrate
# the use of else statement
# with the while loop

counter = 0

while counter < 3:
    print("Inside loop")
    counter = counter + 1
else:
    print("Inside else")

خروجی حاصل از اجرای قطعه کد بالا، به صورت زیر است.

Inside loop
Inside loop
Inside loop
Inside else

در اینجا، از یک متغیر شمارنده برای سه مرتبه چاپ کردن رشته Inside loop استفاده می‌شود. در چهارمین تکرار، شرط درون while غلط (False) خواهد بود. بنابراین، بخش else اجرا می‌شود.

اگر نوشته بالا برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

^^

بر اساس رای ۳۶ نفر
آیا این مطلب برای شما مفید بود؟
شما قبلا رای داده‌اید!
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.

«الهام حصارکی»، فارغ‌التحصیل مقطع کارشناسی ارشد مهندسی فناوری اطلاعات، گرایش سیستم‌های اطلاعات مدیریت است. او در زمینه هوش مصنوعی و داده‌کاوی، به ویژه تحلیل شبکه‌های اجتماعی، فعالیت می‌کند.

3 نظر در “حلقه while در پایتون — به زبان ساده

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد.