Python If … Else

ساختار شرطی IF در پایتون

پایتون از تمام قوانین منطقی ریاضیات پشتیبانی می کند.

  • مساوی a == b
  • نامساوی a != b
  • کوچکتر a < b
  • کوچکتر مساوی یا مساوی با a <= b
  • بزرگتر a > b
  • بزرگتر مساوی یا مساوی با a >= b

از این قوانین در خیلی از جا ها می توان استفاده کرد که بیشترین استفاده اش در ساختار شرطی IF و حلقه ها است.

ساختار شرطی IF با کلمه کلیدی if شروع می‌شود.

مثال:

:If statement

a = 33
b = 200
if b > a:
  print("b is greater than a")

در این مثال ما از دو متغییر a, b در ساختار شرطی IF استفاده کرده ایم در این شرط بررسی می‌شود که اگر b بزرگتر از a است عبارت “b greater than a” چاپ شود.

دندانه گذاری / Indentation

در پایتون دندانه گذاری بسیار اهمیت دارد. جایی که ازفضای خالی برای تعریف قسمت های مختلف کد استفاده می‌کند. اصولا دیگر زبان های برنامه نویسی از { } برای این منظور استفاده می‌کنند.

 

اگر ساختار IF را بدونه دندانه گذاری بنویسید خطا دریافت می‌کنید.

a = 33
b = 200
if b > a:
print("b is greater than a") # you will get an error

Elif

کلمه کلیدی elif در پایتون این امکان را فراهم می‌کند که بگویید اگر شرط if درست نبود شرط بعدی را امتحان کن.

a = 33
b = 33
if b > a:
  print("b is greater than a")
elif a == b:
  print("a and b are equal")

در برنامه بالا a و b با هم برابر هستند بنابراین شرط if درست نیست اما شرط elif درست است و عبارت “a and b are equal” چاپ می‌شود.

Else

در صورتی که هیچکدام از شرط ها درست نباشد آنچه در else می‌نویسید اجرا می‌شود.

a = 200
b = 33
if b > a:
  print("b is greater than a")
elif a == b:
  print("a and b are equal")
else:
  print("a is greater than b")

در مثال فوق a بزرگتر از b است بنابراین هیچکدام از شرط های if و elif درست نیستند و بخش else اجرا می‌شود.

 

همچنین می‌توان از else بدونه elif استفاده کرد.

a = 200
b = 33
if b > a:
  print("b is greater than a")
else:
  print("b is not greater than a")

Short Hand If

اگر فقط یک دستور برای اجرا دارید می‌توانید ساختار شرطی if را در یک خط خلاصه کنید.

if a > b: print("a is greater than b")

Short Hand If ... Else

اگر فقط یک دستور برای if و یک دستور برای else دارید می‌توانید همه را در یک خط به صورت خلاصه بنویسید.

print("A") if a > b else print("B")

می‌توانید چندبار این کار را پشت سرهم تکرار کنید.

print("A") if a > b else print("=") if a == b else print("B")

And

کلمه کلیدی and به عنوان اپراتور منطقی برای ترکیب کردن شرط ها عمل می‌کند.

 

مثال: بررسی شرط اگر a بزرگتر از b بود و c بزرگتر از a بود.(اگر هردو قسمت شرط درست باشد آنگاه شرط درست است)

if a > b and c > a:
  print("Both conditions are True")

Or

کلمه کلیدی or به عنوان اپراتور منطقی برای ترکیب کردن شرط ها به کار می‌رود.

 

مثال: بررسی شرط اگر a بزرگتر از b بود یا اگر a بزرگتر از c بود(اگر یکی از دو طرف شرط یا هردو آنها درست باشد شرط درست است)

if a > b or a > c:
  print("At least one of the conditions is True")