فصل ششم آموزش پایتون مقدماتی - تصمیمگیری و عبارات شرطی (انتشار: 1402/07/30)
زمانی که میخواهیم بر اساس شرایط خاصی تصمیمگرفته، قطعه کد ویا برنامهای را اجرا نماییم، از عباراتشرطی استفاده میکنیم. ساختار این دستورات، به گونهای است که ابتدا شرط (ویا شروط) موجود، ارزیابی میشود. سپس بر حسب درستی ویا نادرستی نتیجهی شرط، باید تعیینشود که چه کارهایی باید انجام شوند. به عبارت دیگر، نتیجهی اجرای آنها، به صورت Boolean خواهدبود.
بر اساس True ویا False بودن این نتیجه، تصمیمگیری میشود که کدام قطعه کدها، بایستی اجرا شوند. شکل (6-1) فرم کلی ساختار تصمیمگیریهای شرطی رایج که در بیشتر زبانهای برنامهنویسی یافت میشود را نشان میدهد.
پایتون هر مقدار غیرصفر و غیرتهی را به عنوان True درنظر میگیرد. بنابراین مقادیر صفر و تهی نیز به عنوان مقدار False درنظر گرفته میشوند. این زبان از انواع مختلف دستورات شرطی پشتیبانی میکند. در ادامه به بررسی جزئیات آنها میپردازیم.
6-1- دستور If
این دستور در پایتون، مشابه زبانهای دیگر اجرا میشود. عبارت if بیانگر شرطی است که با درستبودن آن، نسبت به اجرای یک قطعه کد تصمیم گرفته میشود. شمای کلی این دستور را در شکل (6-2) میبینید.
همان گونه که در شکل (6-3) مشاهده میکنید، در صورت درستی شرط، دستورات بلوک مربوطه اجرا خواهدشد. اگر این شرط نادرست باشد، آن بلوک نادیده گرفتهشده و دستورات بعدی (در صورت وجود) اجرا خواهندشد.
در بلوک شرطی اول، چون متغیر var1 ، حاوی مقدار غیرصفر است، شرط درستشده و دستورات داخل آن اجرا خواهندشد. همچنین در بلوک شرطی دوم، به دلیل صفر بودن متغیر var2 ، دستورات آن بلوک نادیده گرفتهشده و صرفا دستور چاپ نهایی اجرا میشود. نتیجهی اجرای این قطعه کد را در شکل (6-4) میبینید.
6-2- دستور If … Else
همانند زبانهای دیگر برنامهنویسی، در پایتون نیز دستور else میتواند با عبارت if ترکیبشود. این دستور، حاوی بلوک کدی است که اگر جواب شرط برابر False باشد، اجرا میشود. لازم به ذکر است که در دستورات شرطی، else یک عبارت اختیاری محسوب میشود. در شکل (6-5) گرامر آن را خواهید دید.
برای درک بهتر این مطلب، مثالی را در شکل (6-6) نشان میدهیم.
بلوک شرطی اول، همانند مثال قبلی عمل میکند. بلوک دوم، به دلیل نادرست بودن شرط، کدهای مربوط به بخش else چاپ میشوند. در این قطعه کد، هیچ شرطی برای اجرای دستور چاپ نهایی وجود ندارد. نتیجه اجرای آن را درشکل (6-4) میبینید.
6-3- دستور Elif
این دستور به شما اجازه میدهد تا شروط متعدد با بلوکهای دستور مختلف را باهم بررسی و اجرا کنید. به عبارت دیگر، شما چندین شرط مجزا را تعیینکنید تا به محض درستبودن یکی از آنها، بلوک کد مربوط به آن اجرا شود. همانند عبارت else استفاده از این دستور نیز اختیاری است. گرامر این دستور را در شکل (6-8) مشاهده مینمایید.
همان طوری که در مثال شکل (6-9) میبینید، به دلیل درستبودن نتیجهی شرط سوم، بلوک دستوری این شرط اجرا شده است.
نتیجهی اجرای این قطعه کد را در شکل (6-10) خواهیددید.
6-4- دستورات شرطی تو در تو
ممکناست موقعیتی پیشآید که بخواهید شروط دیگری را پس از درست ویا نادرست بودن شرط خاصی، بررسیکنید. در چنین وضعیتی، میتوانید از شروط تو در تو استفادهنمایید. لازم به ذکر است که در این نوع شرط نیز میتوانید از عبارات if...elif...else به صورت تو در تو استفادهنمایید. همان گونه که در شکل (6-11) مشاهده مینمایید، در صورت درستبودن شرط اول، شروط بعدی نیز بررسی خواهندشد.
برای درک بهتر، مثالی از این دستورات را در شکل (6-12) آوردهایم.
در این مثال به دلیل این که مقدار var برابر 100 است، دستورات شرط اصلی، درست خواهدبود. بنابراین شروط بعدی بررسیشده و دستور موجود در شرط درست اجرا میشود. نتیجهی اجرای این مثال را در شکل (6-13) میبینید.
6-5- شروط تکخطی
اگر شرط ما فقط حاوی یک خط دستور باشد، میتوانیم مانند شکل (6-14)، سرآیند و دستور شرط را با هم و در یک سطر داشتهباشیم.
در پست بعدی به حلقههای تکرار خواهیم پرداخت. با ما همراه باشین.
نظرات خوانندگان نوشته
نظری در این مورد دارید؟ خوشحال میشیم اون رو برامون ارسال کنید.