آموزش جامع حلقه ها در پایتون
🎯 اهداف یادگیری
- درک مفهوم حلقهها و کاربرد آنها در برنامهنویسی
- شناخت حلقه for و نحوه استفاده از آن
- شناخت حلقه while و تفاوتهای آن با for
- یادگیری دستورات break، continue و else در حلقهها
- آشنایی با حلقههای تو در تو و کاربردهای آنها
📌 مقدمهای بر حلقهها در پایتون
حلقهها یکی از پایهایترین مفاهیم برنامهنویسی هستند که به ما امکان اجرای تکراری یک بلوک کد را میدهند. پایتون دو نوع حلقه اصلی دارد: for و while.
📌 حلقه for
حلقه for برای تکرار روی عناصر یک شیء قابل تکرار (iterable) مانند لیست، تاپل، رشته، یا دیکشنری استفاده میشود.
# حلقه for روی لیستfruits = ["apple", "banana", "cherry"]for fruit in fruits: print(fruit)# خروجی:# apple# banana# cherry# حلقه for با تابع rangefor i in range(5): print(i)# خروجی: 0 1 2 3 4# حلقه for روی رشتهfor char in "Python": print(char)# خروجی: P y t h o n
تابع ()range در حلقه for:
تابع ()range برای تولید دنبالهای از اعداد استفاده میشود:
# range با یک پارامتر (پایان)for i in range(5): print(i) # 0, 1, 2, 3, 4# range با دو پارامتر (شروع، پایان)for i in range(2, 6): print(i) # 2, 3, 4, 5# range با سه پارامتر (شروع، پایان، قدم)for i in range(0, 10, 2): print(i) # 0, 2, 4, 6, 8# range با قدم منفیfor i in range(5, 0, -1): print(i) # 5, 4, 3, 2, 1
📌 حلقه while
حلقه while تا زمانی که شرط آن True باشد، به اجرای کد ادامه میدهد.
# حلقه while سادهcount = 0while count < 5: print(count) count += 1# خروجی: 0 1 2 3 4# حلقه while با شرط پیچیدهpassword = ""while password != "secret": password = input("لطفا رمز عبور را وارد کنید: ")print("خوش آمدید!")# حلقه بینهایت (با احتیاط استفاده شود!)while True: user_input = input("دستور را وارد کنید (exit برای خروج): ") if user_input == "exit": break
📌 دستور break
دستور break برای خروج زودهنگام از حلقه استفاده میشود.
# break در حلقه forfor i in range(10): if i == 5: break print(i)# خروجی: 0 1 2 3 4# break در حلقه whilecount = 0while True: print(count) count += 1 if count >= 5: break# خروجی: 0 1 2 3 4
📌 دستور continue
دستور continue اجرای بقیه دستورهای تکرار جاری حلقه را متوقف کرده و کنترل برنامه را مستقیماً به ابتدای تکرار بعدی منتقل میکند.
# continue در حلقه forfor i in range(10): if i % 2 == 0: continue print(i)# خروجی: 1 3 5 7 9 (فقط اعداد فرد)# continue در حلقه whilecount = 0while count < 10: count += 1 if count % 2 == 0: continue print(count)# خروجی: 1 3 5 7 9
📌 دستور else در حلقهها
در پایتون، حلقهها میتوانند یک بلوک else داشته باشند که بعد از اتمام طبیعی حلقه (بدون break) اجرا میشود.یعنی اگر حلقه با break به اتمام رسید بلوک else دیگر اجرا نخواهد شد.
# else با حلقه forfor i in range(5): print(i)else: print("حلقه به طور طبیعی پایان یافت")# خروجی: 0 1 2 3 4 سپس "حلقه به طور طبیعی پایان یافت"# else با breakfor i in range(5): if i == 3: break print(i)else: print(حلقه به طور طبیعی پایان یافت")# خروجی: 0 1 2 (بلوک else اجرا نمیشود)# else با حلقه whilecount = 0while count < 3: print(count) count += 1else: print("حلقه while به پایان رسید")
📌 حلقههای تو در تو (Nested Loops)
حلقههای تو در تو زمانی استفاده میشوند که نیاز به انجام عملیات روی ساختارهای داده چندبعدی داریم.
# حلقه for تو در توfor i in range(3): for j in range(2): print(i, j)# خروجی:# 0 0# 0 1# 1 0# 1 1# 2 0# 2 1# حلقه while تو در توi = 0while i < 2: j = 0 while j < 3: print(i, j) j += 1 i += 1# خروجی:# 0 0# 0 1# 0 2# 1 0# 1 1# 1 2
📌 تمرینهای عملی
حالا نوبت شماست! کدهای زیر را بررسی کنید و نتیجه را پیشبینی کنید:
# تمرین ۱for i in range(1, 6): print(i * i)# تمرین ۲numbers = [2, 5, 8, 10, 13]for num in numbers: if num % 2 == 0: continue print(num)# تمرین ۳count = 3while count > 0: print(count) count -= 1else: print("شمارش به پایان رسید!")