به کمک شرطها در زبانهای برنامه نویسی میتوانیم تصمیمگیری کنیم. با استفاده از دستور if در پایتون میتوان مشخص کرد که اگر یک یا چند شرط برقرار بود، کدهای خاصی را اجرا کند. در این مقاله با شرط در پایتون و روشهای استفاده از آن را میخوانیم.
در زبانهای برنامه نویسی هم مثل حرفهایی که هر روزه میزنیم، اما و اگرهای زیادی داریم! برای مثال:
- اگر کاربر پیام را تأیید کرد، اطلاعات را ثبت کن.
- اگر عدد وارد شده کمتر از ۱۰۰ بود، آن را دو برابر کن.
- اگر عدد ضریب ۳ و بیشتر از ۹۹۹ بود، پیام تشکر نشان بده.
- اگر عدد فرد بود، آن را نمایش بده و اگر زوج بود، یکی از آن کم کن.
اینها شرطهای ساده و متفاوتی هستند که با استفاده از دستور if و دستور if else در پایتون قابل اجرا هستند.
در ابتدا با دستور شرطی آشنا شده و سپس ۳ نوع دستور شرطی پایتون را خواهیم آموخت.
دستور شرط در پایتون
همانطور که تا اینجا متوجه شدید، به کمک یک شرط، در صورتی که وضعیت خاصی برقرار بود، اقدام به اجرای کدهای خاصی میکنیم.
دیاگرام زیر، نحوه اجرای سادهترین نوع دستور شرطی (با یک شرط) را نشان میدهد.
شرطها چگونه تعریف میشوند ؟
برای اجرای شرط، ابتدا باید یک وضعیت را مشخص کنیم. منظورم از وضعیت، همان چیزی است که میخواهیم اگر اتفاق افتاد، کدهای دیگر اجرا شوند.
شرطها یا درست (True) یا غلط (False). به این نوع مقادیر، مقادیر بولیَن (Boolean) گفته میشود.
برای مقایسه مقادیر عددی باید از عملگرهای مقایسهای استفاده کنیم. عملگرهای مقایسهای عبارتاند از:
-
==
برای بررسی مساوی بودن دو مقدار -
!=
برای مقایسه مساوی نبودن دو مقدار -
<
و>
برای مقایسه بزرگتری و کوچکتری -
<=
و>=
برای مقایسه بزرگتر مساوی و کوچکتر مساوی
فرض کنید میخواهیم اگر مقدار متغیر i برابر ۱ بود، کار خاصی انجام دهیم. پس وضعیت (شرط) ما میشود:
i == 1
نتیجه این مقایسه، به صورت یک عبارت Boolean خواهد بود.
اگر بخواهیم بهطور همزمان از چند شرط استفاده کنیم، از کلمات کلیدی and و or میان شرطها استفاده خواهیم کرد.
- and به معنی «و» : همه شرطها باید همزمان با هم برقرار باشند.
- or به معنی «یا» : حداقل یکی از شرطها باید برابر باشد.
حالا نوبت آشنایی با ساختار دستورات شرطی پایتون است. بریم که با ۳ ساختار اصلی شرطها در پایتون آشنا شویم.
دستور if در پایتون
پایه و اساس تمام شرطها در پایتون با کلمه کلیدی if شروع میشود. کلمه if به معنای «اگر» است. ساختار یک شرط ساده در پایتون به صورت زیر است:
if condition: doSomeThing()
-
condition
همان شرط یا شرطهای ماست. - و
doSomeThing()
یک قطعه کد یا فراخوانی یک تابع است.
همینطور که میبینید تعریف شرط در پایتون بسیار ساده و مشابه زبان محاورهای است!
فرض کنید میخواهیم بگوییم اگر i بزرگتر از 10 بود، پیغام تأیید چاپ کند. برای این کار به صورت زیر عمل میکنیم:
if i >= 10: print("Accepted!")
به همین سادگی!
حال میخواهیم اگر عدد i بزرگتر از 10 بود و مقدار j دقیقاً مساوی 25 بود، پیغام تأیید چاپ کند:
if i >= 10 and j == 25: print("Accepted!")
دستور else در پایتون
در مکالمات روزمره از شرطهای پیچیدهتری هم استفاده میکنیم. مثلاً میگوییم:
اگر فردا هوا آفتابی بود به خیابان میروم و در غیر این صورت در خانه میمانم!
به بخش دوم عبارت گفته شده دقت کنید. چه چیزی باعث جدا شدن قسمت دوم عبارت شده؟
درست حدس زدید: «در غیر این صورت» در محاوره از «وگرنه» یا «اگرنه» هم استفاده میکنیم.
معادل «در غیر این صورت» در ساختار شرطی پایتون، با کلمه کلیدی else شناخته شده و نحوه استفاده از آن به صورت زیر است:
if condition: # code 1
else: # code 2
اگر شرط condition برقرار بود (True بود)، کد ۱ و در غیر این صورت کد ۲ اجرا خواهد شد.
فرض کنید عددی در متغیر num داریم. میخواهیم بررسی کنیم که آیا این عدد یک عدد حسابی است یا منفی ؟ اعداد حسابی بازه 0 و بزرگتر از آن هستند.
پس باید بررسی کنیم که اگر مقدار متغیر بزرگتر یا مساوی 0 بود، عدد حسابی و در غیر این صورت عدد منفی خواهد بود.
num = 7
if num >= 0: print("Number is Whole!")
else: print("Number is Negative!")
پس از اجرای کد بالا، شرط برقرار بوده و خط سوم اجرا میشود:
Number is Whole!
اگر مقدار متغیر را برابر عددی منفی قرار دهیم، خط پنج آن اجرا خواهد شد.
num = -21
if num >= 0: print("Number is Whole!")
else: print("Number is Negative!")
# Result:
Number is Negative!
ترتیب خطوط اجرا شده در ساختار شرطی if…else بالا به این صورت است: ۱ -> ۲ -> ۴ -> ۵
دستور شرطی elif پایتون
تا اینجا با ساختار اصلی شرط در پایتون آشنا شدیم. یک کلمه کلیدی دیگر که برای ساختارهای شرطی که میخواهیم در آنها چندین بار و چند شرط مختلف را بررسی کنیم وجود دارد.
کلمه elif مخفف عبارت else if است. جمله زیر در زبان محاورهای را در نظر بگیرید:
اگر فردا هوا آفتابی بود، به خیابان میروم، اگر بارانی بود به پارک میروم و در غیر این صورت در خانه میمانم.
عبارت بالا از سه بخش تقسیم شده: اگر [بخش ۱] در غیر این صورت اگر [بخش ۲] در غیر این صورت [بخش ۳]
بسته به شرایط، قسمت دوم میتواند بارها و بارها تکرار شود. اما در هر ساختار شرطی، قسمت اول و قسمت سوم فقط یکبار وجود دارند.
ساختار if…elif…else در پایتون به صورت زیر تعریف میشود:
if condition1: # code 1
elif condition2: # code 2
else: # code 3
میتوانیم با تکرار قسمت دوم، بارها و بارها شرطهای مختلفی را بررسی کنیم؛ مشابه زیر:
if condition1: # code 1
elif condition2: # code 2
elif condition3: # code 3
elif condition4: # code 4
else: # code 5
همان مثال عددی قبلی را در نظر بگیرید، با این تفاوت که اگر عدد مثبت بود، یک پیام، اگر صفر بود، پیامی دیگر و در غیر این صورت (در صورت منفی بودن) پیام مرتبطی نمایش دهد.
برای حرفهایتر شدن کار به کمک آموزش گرفتن ورودی از کاربر در پایتون، عدد را از کاربر میگیریم:
num = int(input())
if num > 0: print("Number is Positive!")
elif num == 0: print("Number is Zero!")
else: print("Number is Negative!")
این کد را اجرا کرده و چند عدد مختلف را به عنوان ورودی به آن میدهیم. نتیجه را در تصویر زیر مشاهده میکنید.
جمعبندی: آموزش شرط در پایتون
در این مقاله با ساختار شرطها در پایتون آشنا شدیم. از شرطها زمانی استفاده میشود که میخواهیم در صورت برقراری یک وضعیت خاص، قطعه کد مشخص اجرا شود. ساختار شرط در پایتون از سه کلمه کلیدی اصلی استفاده میکند:
-
if
: برای شروع ساختار شرطی و بررسی شرط -
elif
: در صورت برقرار نبودن شرط اصلی، شرط دیگری را بررسی میکند. (اختیاری) -
else
: در صورت برقرار نبودن شرط (یا شرطها) اجرا خواهد شد. (اختیاری)
شرطها در هر زبان برنامهنویسیای بسیار زیاد استفاده میشوند. پس سعی کنید علاوه بر مرور مثالهای این آموزش، چند مثال برای خودتان کد بزنید.