حلقه‌ها، ایتریتورها و کنترل جریان تکرار در پایتون

در پایتون، حلقه‌ها ابزاری کلیدی برای انجام عملیات تکراری هستند. حلقه‌های for برای تعداد مشخص و while برای تعداد نامشخص استفاده می‌شوند. با معرفی مفهوم ایتریتور، تابع input برای دریافت داده از کاربر، و توابعی مثل enumerate, zip, next, و shuffle، این مقاله درک جامعی از نحوه مدیریت و کنترل جریان تکرار در پایتون ارائه می‌دهد.

iteratorloop

~2 دقیقه مطالعه • بروزرسانی ۷ مرداد ۱۴۰۴

۱. حلقه‌های با تکرار مشخص: حلقه for


برای تکرار روی عناصر قابل شمارش (iterables) مانند لیست، رشته یا range استفاده می‌شود.



for i in range(5):  
    print("Hello", i)

خروجی:



Hello 0  
Hello 1  
Hello 2  
Hello 3  
Hello 4

۲. حلقه‌های با تکرار نامشخص: حلقه while


تا زمانی که شرط برقرار باشد، تکرار ادامه دارد.



x = 0  
while x < 3:  
    print("x =", x)  
    x += 1

۳. دریافت ورودی از کاربر با input()


تابع input یک رشته از کاربر دریافت می‌کند و خروجی آن همیشه نوع str است.



name = input("What's your name? ")  
print("Hello", name)

۴. ایتریتورها در پایتون


هر شیء قابل تکرار (iterable) مانند لیست، رشته، tuple و دیکشنری می‌تواند تبدیل به ایتریتور شود.



my_list = [10, 20, 30]  
iterator = iter(my_list)  
print(next(iterator))  # 10  
print(next(iterator))  # 20  
print(next(iterator))  # 30

۵. enumerate: شمارنده در حین تکرار



for index, value in enumerate(["a", "b", "c"]):  
    print(index, value)

۶. zip: هم‌گام‌سازی چند لیست



names = ["Ali", "Sara"]  
scores = [80, 90]  
for name, score in zip(names, scores):  
    print(name, score)

۷. shuffle: ترتیب تصادفی لیست


از ماژول random برای تغییر تصادفی ترتیب لیست استفاده می‌شود.



import random  
items = [1, 2, 3, 4]  
random.shuffle(items)  
print(items)

۸. ترکیب حلقه با input برای تکرار تا شرط خاص



while True:  
    answer = input("Type 'exit' to quit: ")  
    if answer == "exit":  
        break

۹. نتیجه‌گیری


شناخت ساختارهای تکرار و ابزارهایی مثل `input`, `zip`, `enumerate`, و `shuffle` به برنامه‌نویس قدرت می‌دهند تا جریان اجرای برنامه را کنترل کند و کدی روان و منعطف بنویسد. حلقه‌ها، به‌ویژه با ترکیب داده‌های پویا، قلب منطق بسیاری از الگوریتم‌ها در پایتون هستند.


نوشته و پژوهش شده توسط دکتر شاهین صیامی