مستر کد
mrcode.wikibix.ir

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

نویسنده : نازنین رحمانی | زمان انتشار : 09 اسفند 1399 ساعت 20:49

جهت انجام پروژه های دانشجویی و یا تمرین‌های برنامه نویسی رشته کامپیوتر میتوانید به آی دی تلگرام زیر پیام دهید

@AlirezaSepand



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

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

حلقه for در پایتون برای تکرار کردن کاری در یک توالی («لیست» (List)، «تاپل» (Tuple)، «رشته» (String)) یا دیگر اشیای قابل تکرار، مورد استفاده قرار می‌گیرد. تکرار کردن کاری در یک توالی، «پیمایش» (Traversal) نامیده می‌شود.

نحو حلقه for

در ادامه، «نحو» (Syntax) حلقه for در پایتون، آورده شده است.

forval insequence:

Body of for

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

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

در تصویر زیر، فلوچارت حلقه for در پایتون را مشاهده می‌کنید.

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

در قطعه کد زیر، مثالی از یک حلقه for در پایتون را مشاهده می‌کنید.

# Program to find the sum of all numbers stored in a list

# List of numbers

numbers=[6,5,3,8,4,2,5,4,11]

# variable to store the sum

sum=0

# iterate over the list

forval innumbers:

sum=sum+val

# Output: The sum is 48

print("The sum is",sum)

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

تابع ()range در پایتون

می‌توان یک توالی از اعداد را با استفاده از تابع ()range تولید کرد. (range(10، اعداد از ۰ تا ۹ را تولید می‌کند (ده عدد). همچنین، می‌توان سایز شروع، پایان و گام را به عنوان (range(start,stop,step size تعریف کرد. سایز گام به طور پیش‌فرض و در صورتی که مقدار دهی نشده باشد، برابر با یک خواهد بود. این تابع، همه مقادیر را در حافظه ذخیره نمی‌کند زیرا موجب عدم کارایی می‌شود. این در حالی است که نقطه شروع، توقف و سایز گام را به خاطر دارد و عدد بعدی را ضمن تکرار می‌سازد. برای مجبور کردن این تابع به خروجی دادن همه عناصر، می‌توان از تابع ()list استفاده کرد. مثال زیر، این موضوع را شفاف خواهد کرد.

# Output: range(0, 10)

print(range(10))

# Output: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

print(list(range(10)))

# Output: [2, 3, 4, 5, 6, 7]

print(list(range(2,8)))

# Output: [2, 5, 8, 11, 14, 17]

print(list(range(2,20,3)))

می‌توان از تابع ()range برای حلقه‌ها به منظور تکرار کردن یک توالی از اعداد استفاده کرد. این تابع را می‌توان با تابع ()len برای تکرار کردن کاری در یک توالی با استفاده از اندیس‌دهی، ترکیب کرد. در ادامه، مثالی در همین رابطه ارائه شده است.

# Program to iterate through a list using indexing

genre=['pop','rock','jazz']

# iterate over the list using index

foriinrange(len(genre)):

print("I like",genre[i])

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

Ilike pop

Ilike rock

​Ilike jazz

حلقه for با else

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

digits=[0,1,5]

foriindigits:

    print(i)

else:

    print("No items left.")

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

در اینجا، حلقه for، عناصر لیست را تا هنگامی که حلقه متوقف شود، پرینت می‌کند. هنگامی که حلقه for متوقف شد، بلوک کد موجود در else اجرا و پرینت می‌شود.

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

^^

الهام حصارکی (+)

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

بر اساس رای 50 نفر

آیا این مطلب برای شما مفید بود؟


منبع: blog.faradars.org