پایتون از شرط‌های منطقی که در ریاضیات وجود دارد پشتیبانی می ‌کند.
برابر: a == b
نابرابر: a != b
کوچک‌تر: a < b
کوچک‌تر مساوی: a <= b
بزرگ‌تر: a > b
بزرگ‌تر مساوی: a >= b
این شرط‌ها به چندین روش قابل استفاده است که معمولاً در دستور‌های شرطی (If…Else) و حلقه‌ها (For, While) می‌باشد.
دستورهای شرطی با استفاده از کلمه‌ی کلیدی If نوشته می‌شود.
در مثال زیر دو متغیر a و b داریم که با استفاده از دستور شرطی If بررسی می‌کنیم آیا b از a بزرگ‌تر است. در صورتی که شرط صحیح باشد یک پیام چاپ می‌شود.

# Input
a = 33
b = 200

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

# Output
b is greater than a

فرورفتگی

پایتون برای تعریف محدوده‌ی کد از فرورفتگی (فضای سفید در ابتدای خط) استفاده می‌کند. سایر زبان‌های برنامه‌نویسی از آکولاد (Curly-Brackets) استفاده می‌کنند.
به مثال زیر دقت کنید. دستور شرطی If بدون فرورفتگی یک خطا ایجاد می‌کند.

# Input
a = 33
b = 200

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

# Output
File "demo_if_error.py", line 4
    print("b is greater than a")
        ^
IndentationError: expected an indented block

Elif

کلمه‌ی کلیدی Elif به این معنی است که اگر شرط قبلی صحیح نبود این شرط را بررسی کنید.

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

# Output
a and b are equal

در مثال بالا a با b برابر است. بنابراین شرط اول صحیح نیست ولی شرط Elif صحیح است و پیام نوشته شده چاپ می‌شود.

Else

کلمه‌ی کلیدی Else در صورتی که شرط یا شرط‌های قبلی صحیح نباشد اجرا می‌شود.

# Input
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")

# Output
a is greater than b

در مثال بالا a از b بزرگ‌تر است. بنابراین شرط اول صحیح نیست. همچنین شرط Elif هم صحیح نیست. در نتیجه Else اجرا می‌شود و پیام ”a is greater than b” را چاپ می‌کند.
شما می‌توانید بدون داشتن Elif از کلمه‌ی کلیدی Else استفاده کنید.

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

# Output
b is not greater than a

If کوتاه شده

اگر فقط یک دستور برای اجرا دارید می‌توانید آن را در همان خط If بنویسید.

# Input
a = 200
b = 33

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

# Output
"a is greater than b"

Else کوتاه شده

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

# Input
a = 2
b = 330

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

# Output
B

این روش به عنوان عملگرهای سه‌تایی یا عبارت‌های شرطی شناخته می‌شود.
همچنین می‌توانید چندین دستور Else را در همان خط داشته باشید.

# Input
a = 330
b = 330

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

# Output
=

And

کلمه‌ی کلیدی And یک عملگر منطقی است که با دستور‌های شرطی ترکیب شده و استفاده می‌شود.
مثال زیر اگر a بزرگ‌تر از b و اگر c بزرگ‌تر از a باشد پیام “Both conditions are True” را چاپ می‌کند.

# Input
a = 200
b = 33
c = 500
if a > b and c > a:
    print("Both conditions are True")

# Output
Both conditions are True

Or

کلمه‌ی کلیدی Or یک عملگر منطقی است که با دستور‌های شرطی ترکیب شده و استفاده می‌شود.
مثال زیر اگر a بزرگ‌تر از b یا اگر c بزرگ‌تر از a باشد پیام “At least one of the conditions is True” را چاپ می‌کند.

# Input
a = 200
b = 33
c = 500
if a > b or a > c:
  print("At least one of the conditions is True")

# Output
At least one of the conditions is True

If تو در تو

شما می‌توانید دستور If را داخل دستور If دیگری استفاده کنید.

# Input
x = 41

if x > 10:
    print("Above ten,")
    if x > 20:
      print("and also above 20!")
    else:
      print("but not above 20.")

# Output
Above ten,
and also above 20!

کلمه‌ی کلیدی Pass

دستور‌های شرطی نمی‌توانند خالی باشند. اما اگر برای شرط If دستوری (محتوایی) ندارید می‌توانید با وارد کردن دستور Pass از ایجاد خطا جلوگیری کنید.

# Input
a = 33
b = 200

if b > a:
  pass

# having an empty if statement like this, would raise an error without the pass statement

منابع
w3schools.com – Python Conditions
Photo by luis gomes from Pexels

نظر دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *