جلسه ۱۶: عبارت if در پایتون

در این درس عملکرد عبارتهای if
را بررسی خواهیم کرد.
ساختار
سادهترین عبارت شرطیای که ما میتوانیم بنویسیم عبارت if
است. که شامل دو بخش نیز هست:
- بخش شرط
- بخش کدی که باید اجرا بشود
در عکس بالا لازم است دونقطه(:) را حتما استفاده کنیم، و مشخص کننده این است که اگر شرط برقرار باشد، کدهایی که بعد از آن نوشته میشوند باید اجرا بشوند. با این حال پرانتزی که دور عبارت شرطی قرار میگیرد، ضروری نیست و میتوان آن را حذف کرد. نکته دیگر اینکه کدی که قرار است اجرا شود به اندازه یک tab
باید سمت راست برود.
Indentation یا تورفتگی
indentation در پایتون نقش اساسی دارد. عباراتی که سطح indentation
یکسانی دارد مربوط به یک قطعه کد خواهند بود. کد یک عبارت if
یک مقدار فاصله از کدهای خارج از آن دارد تا نشان دهد این بلوک یک بلوک دیگر است و عبارات این قطعه کد به هم مرتبط اند و همچنین اینکه از بلوک قبلی جداست.
مقادیر تورفتگی یا indent
های ما باید در بلوک ثابت باشد. اگر ما دو space
را برای یک بخش کد انتخاب کردیم به عنوان indentation
، باید تا انتهای آن بلوک این را نگه داریم و تغییر ندهیم. بنابراین مقدار indentation
را هنگام کدنویسی به خاطر بسپارید.
بعدا خواهیم دید که چگونه تورفتگی ها در سایر بخشهای پایتون نقش دارند و استفاده میشوند.
جریان کاری یک عبارت if
(اگر شرط، نتیجه True
داشته باشد، کدها(کدهایی که باید اجرا شود)، اجرا میگردند در غیر اینصورت از آن عبور خواهد کرد)
حال کدی را ببینیم که با استفاده از if
سعی دارد اطلاعاتی را مشخص سازد:
num = 5
if (num == 5): # The condition is true
print("The number is equal to 5") # The code is executed
if num > 5: # The condtion is false
print("The number is greater than 5") # The code is not executed
اولین شرط ما در کدبالا، بررسی میکند که آیا مقدار متغیر num
برابر ۵ است یا خیر. که در اینجا این عبارت شرطی boolean
ای مقدار True
میدهد به همین دلیل نرمافزار پایتون به خط ۴ میرود و آن را اجرا میکند.
همانطور که میبینید تابع print
در بدنه if
مقداری تورفتگی به سمت راست دارد. اگر این نبود ما به ارور بر میخوردیم. پایتون تاکید زیادی بر تورفتگی های مناسب دارد.
شروط با استفاده از عملگرهای منطقی
ما میتوانیم با استفاده از عملگرهای منطقی، شروط پیچیدهتری برای عبارت if
بنویسیم. به عنوان مثال ممکن است بخواهیم چندین عبارت را برای درست بودن بررسی کنیم.
num = 12
if num % 2 == 0 and num % 3 == 0 and num % 4 == 0:
# Only works when num is a multiple of 2, 3, and 4
print("The number is a multiple of 2, 3, and 4")
if (num % 5 == 0 or num % 6 == 0):
# Only works when num is either a multiple of 5 or 6
print("The number is a multiple of 5 and/or 6")
در کدبالا و در عبارت if
اول، نیاز داریم همه شرطها برقرار بشوند به همین دلیل از and
استفاده کردهایم.
در عبارت if
دوم ، اگر یکی از دو عبارت داده شده در شرط درست باشند، عبارت boolean
ای True
خواهد بود چرا که ما از عملگر or
استفاده کردهایم.
if های تودرتو
یک ویژگی خیلی مهم در عبارات شرطی این است که میتوانیم آن ها را به صورت تو در تو به کار ببریم. یعنی اینکه از عبارت if
داخل یک if
دیگر استفاده کنیم. بنابراین میتوان از این روش برای ساخت عبارات شرطی پیچیده استفاده کنیم.
num = 63
if num >= 0 and num <= 100:
if num >= 50 and num <= 75:
if num >= 60 and num <= 70:
print("The number is in the 60-70 range")
نکته: دقت شود که هر if در این روش به تورفتگی (indentation) بیشتر نیاز دارد.
ساخت و ویرایش متغیرها
در عبارات شرطی میتوانیم متغیرها را مقداردهی کنیم و حتی متغیر جدید بسازیم.
num = 10
if num > 5:
num = 20 # Assigning a new value to num
new_num = num * 5 # Creating a new value called newNum
# The if condition ends, but the changes made inside it remain
print(num)
print(new_num)
عبارات های if
، پایه و اساس عبارات شرطی در برنامه نویسی پایتون هستند. دو نوع بعدی عبارت شرطی که یاد خواهیم گرفت هم بر اساس همین if
ساخته شده اند.
در درس بعدی عبارتهای if-else
را بررسی خواهیم کرد.