سلام !

در پست های قبلی ، با شیوه نام گذاری متغیرها ، اینکه رشته چه چیزهایی هستند ، عملگرهای ریاضی در پایتون به چه شکلی نمایش داده میشن و همچنین با تابع print و نحوه نمایش یک جمله ، آشنا شدیم ؛ حالا میخوایم با سه تا مهم و شرطی پایتون ، به نام های if ، else و elif آشنا بشیم .

با ما همراه باشید !

نام عملگر ( نماد ) توضیح عملگر مثال
تساوی ( == ) جوابش بله و خیر یا True و False است

8 == 4 جواب : False

6 == 6 جواب : True

مقایسه در عدم تساوی ( =! ) جوابش بله و خیر یا True و False است

2 =! 1 جواب : True

4 =! 4 جواب : False

مقایسه در عدم تساوی ( <> ) جوابش بله و خیر یا True و False است 8 < 5 > 6 جواب : False
مقایسه در بزرگی ( < ) جوابش بله و خیر یا True و False است  8 < 9 جواب : True
مقایسه در کوچکی ( > ) جوابش بله و خیر یا True و False است 7>8 جواب : False

مقایسه در بزرگتر یا مساوی بودن 

( =< )

جوابش بله و خیر یا True و False است 8 =< 9 جواب : True

مقایسه در کوچکتر یا مساوی بودن

( => )

جوابش بله و خیر یا True و False است 8 => 8 جواب : True

اول از همه ، باید این نکته رو بگم که بسیاری از توابع و بسیاری از دستورات در پایتون ، خیلی به هم شبیه هستند ؛ در واقع ، نه از لحاظ دستوراتی که در پایتون دارند ؛ بلکه میشه گفت ، مکمل همدیگه هستند ؛ برای مثال ، با تابع len میشه تعداد کاراکترهای یک رشته رو با استفاده از تابع print دریافت کنیم .

دستورات شرطی if و else هم مکمل یکدیگر هستند و دستور elif همونطور که از اسمش مشخصه ، ترکیبی از این دو هست و دستورات شرطی بسیار نزدیک به حلقه ها در پایتون هستند ؛ طوری که میشه در برنامه های خاصی به جای حلقه ها ، از دستورات شرطی و یا بالعکس استفاده کنیم .

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

اما دستورات شرطی ، کمی متفاوت هستند .

دستور if : این کلمه در انگلیسی ، به معنای (( اگر )) هست ؛ یعنی کاملا مشخصه که میخواد یه شرط رو مشخص کنه . دستورات شرطی از مهم ترین و حیاتی ترین بخش های هر برنامه هستند . 

و اما ساختارش به چه شکلیه ؟ تکه کد زیر رو ببینید :

 A = 12
if A == 12 : #برابر با 12 بود A اگر مقدار
	print('the value of A is 12') # این رشته رو چاپ کن
else: #در غیر اینصورت
	print('the A is not 12')

نکته خیلی مهم : بعد از شرطی که نوشتید ( چه بعد از else و چه بعد از if ) دو نقطه رو فراموش نکنید . در غیر اینصورت ، پایتون خطای نگارش رو به شما خواهد داد .

نکته مهم شماره 2 : همونطور که میبینید ، خط بعد از if ، از اول صفحه آغاز نشده و کمی فاصله بهش داده شده تا دستور print به عنوان زیرمجموعه  if عمل کنه . ( اصطلاحا ، تورفتگی داره )در غیر اینصورت ، یعنی اگر print رو از اول صفحه آغاز میکردیم ، دستور شرطی ما بیهوده بود . این نکته رو در شرط های تو در تو هم باید رعایت کنیم .( هر چه شرط درونی تر باشه ، یعنی با فاصله باشه ، دستور بعدیش هم باید با فاصله از سمت چپ صفحه مون باشه )

روی لینک زیر کلیک کنید ؛ صفحه ای براتون باز میشه . در اون صفحه ، من کد برنامه محاسبه توده بدنی یا BMI رو نوشتم ؛( همونطور که میدونید ، برای محاسبه BMI باید وزنتون رو تقسیم بر مجذور قدتون بر واحد متر کنید ) با مشاهده کد ، خیلی راحت میتونید توابع شرطی رو درک کنید :

مشاهده کد

دیدید؟ خیلی راحت یک برنامه نوشته شد !

کدبرنامه بالایی ( محاسبه توده بدنی ) رو آنالیز میکنیم :

 if 1>0: در خط اول ، یک شرط گذاشتیم تا برنامه بصورت نامحدود ، تکرار بشه . در غیر اینصورت ، برنامه نتیجه نهایی رو میداد و بلافاصله خود به خود بسته می شد
	A=float(input("Please Enter your height in centimeters; for example:166")) در این قسمت ، اومدیم و قد فرد رو پرسیدیم
	B=float(input("Please Enter your weight in kilograms; for example:55")) در این قسمت وزن فرد رو پرسیدیم
	X=(A/100)**2 قد فرد رو به متر تبدیل و به توان دو میرسونیم . مجذور همون توان دو هست
	if B/X<18: اگر توده بدنی شخص کمتر از 18 شد
		print('your BMI is very low!!') این جمله رو چاپ کن
	elif B/X>24:یا اگر توده بدنی شخص بیش از 24 شد
		print('your BMI is very high!!') این جمله رو چاپ کن
	else: اگر توده بدنی شخص مابین 18 و 24 شد
		print('your BMI is normal!') این جمله رو چاپ کن

مطمئنا این سوال پیش میاد که : پس else چی شد؟!

این تابع ، همیشه بعد if میاد . و میتونستیم بجای if سومی ، else رو قرار بدیم . که در پایتون ، به معنای : " در غیر اینصورت فلان کار رو بکن ... " هست . به عبارت دیگر ، پایتون ، به جای یک دستور شرطی ، سه دستور if , else , elif رو ساخته تا برنامه نویسان ، از نوشتن فقط یک دستور خسته نشن !

شرطی ترکیبی از else و if به نام elif هم بوجود اومده ؛ در پایتون ، این شرط به معنای : " یا اگر .... " هست . که در برنامه بالاییمون ، به جای if دوم ، elif رو قرار دادیم ؛ elif حتما باید بعد از if بیاد .