فصل ششم آموزش پایتون مقدماتی - تصمیم‌‌گیری و عبارات شرطی (انتشار: 1402/07/30)

زمانی که می‌‌خواهیم بر اساس شرایط خاصی تصمیم‌‌گرفته، قطعه کد ویا برنامه‌‌ای را اجرا نماییم، از عبارات‌‌شرطی استفاده می‌‌کنیم. ساختار این دستورات، به گونه‌‌ای است که ابتدا شرط (ویا شروط) موجود، ارزیابی می‌‌شود. سپس بر حسب درستی ویا نادرستی نتیجه‌‌ی شرط، باید تعیین‌‌شود که چه کارهایی باید انجام شوند. به عبارت دیگر، نتیجه‌‌ی اجرای آن‌‌ها، به صورت Boolean خواهدبود.

این چیه؟

بر اساس True ویا False بودن این نتیجه، تصمیم‌‌گیری می‌‌شود که کدام قطعه کدها، بایستی اجرا شوند. شکل (6-1) فرم کلی ساختار تصمیم‌‌گیری‌‌های شرطی رایج که در بیشتر زبان‌‌های برنامه‌‌نویسی یافت می‌‌شود را نشان می‌‌دهد.

پایتون-شکل1-6

پایتون هر مقدار غیرصفر و غیرتهی را به عنوان True درنظر می‌‌گیرد. بنابراین مقادیر صفر و تهی نیز به عنوان مقدار False درنظر گرفته می‌‌شوند. این زبان از انواع مختلف دستورات شرطی پشتیبانی می‌‌کند. در ادامه به بررسی جزئیات آن‌‌ها می‌‌پردازیم.

6-1- دستور If

این دستور در پایتون، مشابه زبان‌‌های دیگر اجرا می‌‌شود. عبارت if بیان‌‌گر شرطی است که با درست‌‌بودن آن، نسبت به اجرای یک قطعه کد تصمیم گرفته می‌‌شود. شمای کلی این دستور را در شکل (6-2) می‌‌بینید.

پایتون-شکل2-6

همان گونه که در شکل (6-3) مشاهده می‌‌کنید، در صورت درستی شرط، دستورات بلوک مربوطه اجرا خواهدشد. اگر این شرط نادرست باشد، آن بلوک نادیده گرفته‌‌شده و دستورات بعدی (در صورت وجود) اجرا خواهند‌‌شد.

پایتون-شکل3-6

در بلوک شرطی اول، چون متغیر var1 ، حاوی مقدار غیرصفر است، شرط درست‌‌شده و دستورات داخل آن اجرا خواهندشد. همچنین در بلوک شرطی دوم، به دلیل صفر بودن متغیر var2 ، دستورات آن بلوک نادیده گرفته‌‌شده و صرفا دستور چاپ نهایی اجرا می‌‌شود. نتیجه‌‌ی اجرای این قطعه کد را در شکل (6-4) می‌‌بینید.

پایتون-شکل4-6

6-2- دستور If … Else

همانند زبان‌‌های دیگر برنامه‌‌نویسی، در پایتون نیز دستور else می‌‌تواند با عبارت if ترکیب‌‌شود. این دستور، حاوی بلوک کدی است که اگر جواب شرط برابر False باشد، اجرا می‌‌شود. لازم به ذکر است که در دستورات شرطی، else یک عبارت اختیاری محسوب می‌‌شود. در شکل (6-5) گرامر آن را خواهید دید.

پایتون-شکل5-6

برای درک بهتر این مطلب، مثالی را در شکل (6-6) نشان می‌‌دهیم.

پایتون-شکل6-6

بلوک شرطی اول، همانند مثال قبلی عمل می‌‌کند. بلوک دوم، به دلیل نادرست بودن شرط، کدهای مربوط به بخش else چاپ می‌‌شوند. در این قطعه کد، هیچ شرطی برای اجرای دستور چاپ نهایی وجود ندارد. نتیجه اجرای آن را درشکل (6-4) می‌‌بینید.

پایتون-شکل7-6

6-3- دستور Elif

این دستور به شما اجازه می‌‌دهد تا شروط متعدد با بلوک‌‌های دستور مختلف را باهم بررسی و اجرا‌‌ کنید. به عبارت دیگر، شما چندین شرط مجزا را تعیین‌‌کنید تا به محض درست‌‌بودن یکی از آن‌‌ها، بلوک کد مربوط به آن اجرا شود. همانند عبارت else استفاده از این دستور نیز اختیاری است. گرامر این دستور را در شکل (6-8) مشاهده می‌‌نمایید.

پایتون-شکل8-6

همان طوری که در مثال شکل (6-9) می‌‌بینید، به دلیل درست‌‌بودن نتیجه‌‌ی شرط سوم، بلوک دستوری این شرط اجرا شده است.

پایتون-شکل9-6

نتیجه‌‌ی اجرای این قطعه کد را در شکل (6-10) خواهیددید.

پایتون-شکل10-6

6-4- دستورات شرطی تو در تو

ممکن‌‌است موقعیتی پیش‌‌آید که بخواهید شروط دیگری را پس از درست ویا نادرست بودن شرط خاصی، بررسی‌‌کنید. در چنین وضعیتی، می‌‌توانید از شروط تو‌‌ در تو استفاده‌‌نمایید. لازم به ذکر است که در این نوع شرط نیز می‌‌توانید از عبارات if...elif...else به صورت تو در تو استفاده‌‌نمایید. همان گونه که در شکل (6-11) مشاهده می‌‌نمایید، در صورت درست‌‌بودن شرط اول، شروط بعدی نیز بررسی خواهندشد.

پایتون-شکل11-6

برای درک بهتر، مثالی از این دستورات را در شکل (6-12) آورده‌‌ایم.

پایتون-شکل12-6

در این مثال به دلیل این که مقدار var برابر 100 است، دستورات شرط اصلی، درست خواهدبود. بنابراین شروط بعدی بررسی‌‌شده و دستور موجود در شرط درست اجرا می‌‌شود. نتیجه‌‌ی اجرای این مثال را در شکل (6-13) می‌‌بینید.

پایتون-شکل13-6

6-5- شروط تک‌‌خطی

اگر شرط ما فقط حاوی یک خط دستور باشد، می‌‌توانیم مانند شکل (6-14)، سرآیند و دستور شرط را با هم و در یک سطر داشته‌‌باشیم.

پایتون-شکل14-6

 

در پست بعدی به حلقه‌‌های تکرار خواهیم پرداخت. با ما همراه باشین.


نظرات خوانندگان نوشته


نظری در این مورد دارید؟ خوشحال می‌شیم اون رو برامون ارسال کنید.