آموزش حلقه for در پایتون | نحوه استفاده از حلقه ها در پایتون
در این آموزش از آکادمی مطلب دی ال قصد داریم نحوه استفاده از حلقه for را در پایتون آموزش دهیم. برای اینکار ابتدا در چند سطر در مورد حلقهها (loops) و اهمیت آنها توضیح خواهیم داد. در برنامه نویسی گاهی اوقات (یا اکثر اوقات) نیاز میشود یک کار یا یک دستور را چندیدن بار انجام دهیم. نمونه ای از این کار میتواند نمایش عناصر یک لیست یا یک آرایه باشد.
هنگامی که بخواهیم اعضای یک آرایه n عنصری را نمایش دهیم در حالت کلی دو راه کار داریم:
- گام اول: نوشتن n دستور print و نمایش اعضای آرایه (منطقی به نظر نمی رسد)
- گام دوم: استفاده از حلقه ها که دستور print را n بار اجرا کند (یکم منطقی تر شد).
حلقه در برنامه نویسی عملی است که یک کار را چندین بار انجام میدهد بدون اینکه نیاز به تعداد خط کد زیاد برای انجام آن کار باشد.پایتون سه نوع حلقه در خود دارد اما، همانطور که بیان شد در این تاپیک قصد داریم در مورد حلقه for در این زبان برنامه نویسی صحبت کنیم.
آموزش حلقه for در پایتون | نحوه استفاده از حلقه ها در پایتون
این آموزش شامل بخشهای زیر است:
- مثالی از حلقه for در پایتون
- حلقه روی یک رشته
- ایجاد نقطه شکست (خروجی اضطراری از حلقه) به کمک دستور break
- دستور else در حلقه
- استفاده از range() در حلقه ها
- چشم پوشی از بخشی از کدهای موجود در حلقه به کمک دستور continue
- حلقه های تو در تو
همچنین بخوانید: حذف آیتمهای تکراری در یک لیست در پایتون
قالب کلی حلقه for به صورت زیر است:
for <variable> in <sequence>:
<statements>
حلقه for زمانی به کار میرود که تعداد تکرار برای انجام آن عمل معین باشد (همانند نمایش اعضای یک لیست یا گرفتن تعدادی معین عدد از کاربر).
یک مثال ساده از حلقه for
بیایید با مثال ساده زیر با نحوه کارکرد حلقه for در پایتون آشنا شویم:
List=['Mojtaba', 'Iman', 'Morteza', 'Reza']
for Item in List:
print(Item)
خروجی این دستور به صورت زیر است:
Mojtaba
Iman
Morteza
Reza
همانگونه که مشاهده می کنید حلقه for تمامی اعضای list را چاپ کرده است. و این عمل را تا آخرین عضو لیست تکرار کرده است.
حلقه روی یک رشته در پایتون
رشته ها شامل کاراکترهای مختلف هستند. قبل از توضیح کامل این بخش توجه به این نکته ضروری است که در اکثر زبان های برنامه نویسی رشته به صورت یک آرایه ذخیره میگردد. و رشته در زبان پایتون تکرار پذیر هستند. بنابراین میتوان به طول یک رشته عملی خاص را انجام داد. مثال زیر نحوهی اعمال حلقه for در پایتون را روی رشته نمایش میدهد.
Name='Mojtaba'
for Item in Name:
print(Item)
خروجی این دستور به صورت زیر است:
M
o
j
t
a
b
a
دستور بالا تک تک کاراکترهای متغیر Name را در خروجی print میکند یا به عبارتی دیگر حلقه for در این حالت ۷ بار به صورت مستقل اجرا میگردد.
ایجاد نقطه شکست (خروجی اضطراری از حلقه) به کمک دستور break
گاهی در برنامه نویسی حلقهها پیش می آید که میخواهیم زودتر از موعد مقرر (حداکثر تعداد تکرار حلقه) از حلقه خارج شویم. این امر زمانی پیش میآید که شرایطی خاص در برنامه پیش آید، مثلا بخواهیم همهی نامهای یک نام خاص در لیست را چاپ کنیم در این حالت از دستور break استفاده میکنیم.
مثال زیر را در نظر بگیرید:
List = ['Mojtaba', 'Iman', 'Morteza', 'Reza', 'Rahman','Saleh']
for Item in List:
print(Item)
if Item == 'Morteza':
break
در قطعه کد بالا میخواهیم تمامی عناصر لیست قبل از اسم خاص ‘Morteza’ نمایش داده شوند بنابراین هنگامی که به اسم مذکور رسیدیم از حلقه خارج میشویم و اسمهای بعد از اسم مذکور نمایش داده نخواهد شد. خروجی دستور بالا به صورت زیر است.
Mojtaba
Iman
Morteza
دستور else در حلقه
گاهی اوقات ( به خصوص در خطایابی کد هنگامی که برنامه خروجی مطلوبی به ما نمیدهد) دوست داریم بدانیم حلقه اجرا شده است یا خیر میتوانیم در پایان حلقه از دستور else استفاده کنیم. به عبارتی else نشان دهنده پایان موفقیت آمیز حلقه for است. به مثال زیر توجه کنید.
List = ['Mojtaba', 'Iman', 'Morteza']
for Item in List:
print(Item)
else:
print('This is the end . . .')
خروجی این قطعه کد به صورت زیر است:
Mojtaba
Iman
Morteza
This is the end . . .
در قطعه کد بالا با پایان حلقه for دستور else اجرا شده و دستورات موجود در بلاک else اجرا میشود.
استفاده از range() در حلقه ها
گاهی اوقات پیش میآید که بخواهیم یک حلقه را n بار (به عنوان مثال ۱۰۰بار) اجرا کنیم. اگر بخواهیم به کمک روشهای قبل انجام دهیم باید یک لیست تهیه کنیم که ۱۰۰ عضو داشته باشد و به طول بیست تکرار را انجام دهیم (چه کاریه خب!!!؟؟؟). راه حل چیست؟ برای حل این مشکل از تابع rang() استفاده می کنیم. این تابع یک ورودی n میگیرد و به صورت خودکار اعداد صفر تا n-1 را تولید میکند. به کمک این تابع می توانیم حلقه با تکرار بالا را اجرا کنیم. به مثال زیر توجه کنید:
for Item in range(5):
print(Item)
خروجی این کد به صورت زیر است:
۰
۱
۲
۳
۴
تابع range() به صورت افزایشی یک واحد یک واحد افزایش مییابد.
چشم پوشی از بخشی از کدهای موجود در حلقه به کمک دستور continue
در برخی مواقع حالاتی پیش میآید که میخواهیم در شرایط خاص در یک تکرار حلقه از بخشی از کدهای حلقه (خطوط پایانی حلقه) چشم پوشی کنیم. در این حالت تکرار فعلی در آن نقطه از کد که دستور continue وجود دارد تمام شده و برنامه به تکرار بعدی میرود. مثال زیر را در نظر بگیرید.
List=['mojtaba', 'Iman','morteza', 'Karim','morteza', 'Reza']
for Item in List:
if Item=='morteza':
continue
print(Item)
خروجی این دستور به صورت زیر است:
mojtaba
Iman
Karim
Reza
همانگونه که مشاهده میشود هر وقت در لیست به آیتم ‘morteza’ برسیم، با دستور continue این تکرار قطع شده و به تکرار بعدی میرویم. با این کار morteza در خروجی چاپ نمی شود.
حلقه های تو در تو
حلقههای تو در تو همانگونه که از اسم آن پیداست استفاده تو در توی حلقهها است. یعنی میآییم از یک حلقه درون یک حلقهی دیگر استفاده میکنیم. در این حالت به ازای هر تکرار حلقه خارجی، حلقه داخلی بک بار کامل اجرا میشود. مثال زیر را در نظر بگیرید:
List = ['mojtaba', 'Iman','Karim']
for x in List:
for y in range(3):
print(x, y)
خروجی کد بالا به صورت زیر است:
mojtaba 0
mojtaba 1
mojtaba 2
Iman 0
Iman 1
Iman 2
Karim 0
Karim 1
Karim 2
در این مثال عدد بیانگر اجرای حلقه داخلی و نام بیانگر حلقه بیرونی است.
در این آموزش سعی کردیم، حلقه for در پایتون را به صورت ساده و کامل آموزش دهیم. تمامی مثالها در نرمافزار پایچرم نوشته و اجرا شده است. امیدواریم این آموزش برایتان مفید بوده باشد.
سلام.شما معلم خصوصی هستید؟
اگه میشه مقداری برنامه نویسی یاد بدین
من خودم تو مدرسه تا for رو یاد گرفتم.ولی بقیشو نفهمیدم و از مدرسه جا موندم.خوشحال میشم که کمکم کنید:)
اگر موافق بودید اعلام کنید
با تشکر
سلام
به این آی دی در تلگرام پیام بدید
mtc2013