معرفی دستورات if، else، elif و match-case (بخش دوم)
جلسات دوره
مهدی عباسی
مهدی عباسی هستم، مسلط به حداقل ۲۰ زبان مطرح برنامه نویسی به صورت پیشرفته، مدیر عامل شرکت آریا نرم افزار و بنیانگذار آکادمی درسمن، مسلط به تدریس دروس تخصصی کاردانی و کارشناسی کامپیوتر، پایگاه داده ها، برنامه نویسی پیشرفته، مبانی برنامه نویسی، مباحث ویژه طراحی وب و .... مشاهده رزومه
دستورات شرطی در پایتون
در این فصل از آموزش پایتون با دستورات شرطی در پایتون آشنا می شویم:
- مقدمه
- شرط های یک خطی (One line if)
- دستور (math - case)
- کلمه کلیدی (pass)
مقدمه:
یکی دیگر از مهم ترین دستورات ، دستورات شرطی در پایتون است. تا قبل از این دستورات هرچه برنامه می نوشتیم همه ی کدها اجرا می شدند و هیچ کنترلی بر کدها نداشتیم. گاهی نیاز داریم نسبت به شرایط مختلف که کاربران یا سیستم آن ها را به وجود می آورند رفتار های مختلفی انجام دهیم. به عنوان مثال شما می خواهید یک وب را جست و جو کنید اما اینترنتتان متصل نیست در این صورت باید وضیعت های مختلفی برسی بشود و نسبت به آن رفتار های مختلفی با استفاده از این ابزارها یعنی دستورات شرطی در پایتون مانند (if , else , elif) و به تازگی (math - case) به این زبان اضافه شد.
نکته: (math - case) در نسخه (3.10) به بالا موجود است.
شرط های یک خطی (One line if):
به شرط های یک خطی می گویند (One line if). بعضی وقت ها می خواهیم شرط را کوتاه ، زیرهم بنویسیم که به آن ها شرط های یک خطی می گویند (One line if).
اگر فقط یک دستور تحت (if) بود:
ساختار:
if شرط : کدی که درصورت درست بودن آن را اجرا می کند
نمونه:
num1=int(input("Enter width : "))
num2=int(input("Enter height : "))
if num1>0 and num2>0: print(num1*num2)
خروجی(1):
Enter width : 15
Enter height : 0
خروجی(2):
Enter width : -2
Enter height : 5
خروجی(3):
Enter width : 20
Enter height : 20
400
اگر فقط یک دستور تحت (if) و (else) بود:
ساختار:
شرط if کدی که درصورت درست بودن آن را اجرا می کند
else کدی که درصورت نادرست بودن آن را اجرا می کند
نکته: زمانی که از این نوع دستور استفاده می کنیم دیگر نیازی به (:) نیست.
نمونه:
num1 = int(input("Enter width : "))
num2 = int(input("Enter height : "))
print(num1*num2) if num1>0 and num2>0 else print("Error")
خروجی(1):
Enter width : 15
Enter height : 0
Error
خروجی(2):
Enter width : -2
Enter height : 5
Error
خروجی(3):
Enter width : 20
Enter height : 20
400
اگر چند دستور تحت (if) بود:
ساختار:
شرط if کدی که درصورت درست بودن آن را اجرا می کند
; کدی که درصورت درست بودن آن را اجرا می کند
; ….
نکته: پایان هر خط کد باید از (;) استفاده شود.
نکته: بهتر است زمانی که فقط یک دستور تحت (if) بود آن را به صورت یک خطی بنویسیم.
گاهی می خواهیم با استفاده از (if - else) مقدار های مختلفی را در متغیری ذخیره کنیم که می توان آن را به صورت یک خطی نوشت.
نمونه:
num1=int(input("Enter number : "))
x=333 if num1<100 else 999
print(x)
خروجی (1):
Enter number : 65
333
خروجی (2):
Enter number : 280
999
نمونه ای از (if , elif , else):
برای تمرین دستورات شرطی در پایتون می خواهیم برنامه ای بنویسیم که به عنوان ورودی شماره ماه و روز را از ما بگیرد و به عنوان خروجی چندمین روز سال را نمایش دهد.
d=int(input("Enter day : "))
m=int(input("Enter month : "))
if 1<=m and m<=6 :
day=(m-1)*31+d
print(day)
elif 7<=m and m<=12 :
day=(m-1)*30+6+d
print(day)
else:
print("Error")
خروجی(1):
Enter day : 15
Enter month : 5
139
خروجی(2):
Enter day : 9
Enter month : 7
195
خروجی(3):
Enter day : 29
Enter month : 18
Error
کلمه کلیدی (pass):
این کلمه زمانی استفاده می شود که ما بعدا می خواهیم کد درون (if , elif , else , for …) را بعدا بنویسیم.
نمونه:
if 1<=m and m<=6 :
pass
دستور (math – case):
نکته: (math - case) در نسخه (3.10) به بالا موجود است.
گاهی می خواهیم با مقدارهای مختلف تصمیم های مختلف بگیریم می توانیم از (math - case) استفاده کنیم.
ساختار:
match : نام متغیر
case مقدار :
کدهایی که درصورت برابر بودن مقدار اجرا می شوند
case مقدار :
کدهایی که درصورت برابر بودن مقدار اجرا می شوند
case _ :
کدهایی که اگر مقداری با مقدار درون متغیر برابر نبود اجرا می شود
نمونه:
num1=int(input("Enter number : "))
match num1 :
case 1:
print("ali")
case 7:
print("reza")
case 20:
print("mehdi")
case -3:
print("ahmad")
case _:
print("Error")
خروجی(1):
Enter number : 20
mehdi
خروجی(2):
Enter number : -3
ahmad
خروجی(3):
Enter number : 1
ali
خروجی(4):
Enter number : 100
Error
نکته: در آخر باید با (_) پر کرد که مانند (else) در (if , elif , else) عمل می کند.
نکته: (math) و (case) محدوده دارند.
از زمان خود به درستی استفاده کن🕒
برای پرسیدن سوال درباره ی دستورات شرطی در پایتون و... می توانید سوال خود را به گروه تلگرامی پایتون کاران درسمن ارسال کنید.
امیدورایم که این جلسه از آموزش برای شما همراهان همیشگی درسمن مفید بوده باشد وخوشحال میشویم هر گونه پیشنهاد یا انتقادی دراین زمینه بود برای ما در قسمت نظرات ارسال کنید.
نظرات دانشجویان
many thanks for your unbeliveble effort to learn others
ممنونیم، موفق باشید دوست عزیز.
عالی... توصیه می کنم بچه ها ابتدا با زبان پایه c++ آشنا بشن تا تموم زبون ها براشون مثل آب خوردن بشه.
ممنون از شما جناب سهرابی عزیز. بله سی پلاس پلاس مادر زبان های برنامه نویسی محسوب می شود و افراد می توانند ابتدا برای درک بیشتر برنامه نویسی این زبان را یاد بگیرند اما هیچ اجباری نیز وجود ندارد و می توانند مستقیم زبان برنامه نویسی مورد نظرشان را یاد بگیرند.
نظر شما در تصمیم دیگران اثرگذار است.
لطفا برای همراهان درسمن و بهتر شدن دوره نظر خود را بنویسید.