شرط در پایتون از شرطهای منطقی پشتیبانی میکند که در مطلب انواع اپراتور یا عملگر آن را توضیح دادیم.
اپراتورهایی که معمولا در شرطها از آن استفاده میشود:
- تساوی a == b
- نامساوی a != b
- بزرگتر a > b
- کوچکتر a < b
- بزرگتر یا مساوی a >= b
- کوچکتر یا مساوی a <= b
نکته خیلی مهم در نوشتن بلاک کد شرط، رعایت فاصله از ابتدای سطر یا indentation میباشد که هر کدی که داخل کد شرط قرار میگیرد باید حداقل یک فاصله از ابتدای خط داشته باشد که البته استاندارد پایتون، ۴ فاصله است.
شرطی if
از کلیدواژه if زمانی استفاده میکنیم که اگر شرط صحیح بود کار خاصی انجام دهد.
و خب چون b به لحاظ منطق ریاضی بزرگتر از a هست بنابراین خروجی تابع print را در صفحه میبینیم.
خروجی:
شرطی else
از شرطی else زمانی استفاده میکنیم که اگر شرط if صحیح نبود خروجی else را نشان دهد.
و چون شرط if صحیح نیست، بنابراین شرط else نمایش داده میشود.
خروجی:
شرطی elif
خب، تا اینجا شرطیهای if و else را دیدیم، اما elif چیست و چه کاربردی دارد؟
elif در واقع کوتاه شدهی else if میباشد که بین دو شرط if و else همیشه قرار میگیرد و اگر شرط قبلی خودش صحیح نبود، خروجی elif نمایش داده شود.
a = 10
b = 20
if a > b:
print('a is greater than b')
elif:
print('b is greater than a')
else:
print('a equals to b')
خروجی:
Indentation یا فاصلهگذاری
یکی از نکات کلیدی در نوشتن کد در پایتون و اجرای صحیح برنامه، رعایت فاصلهگذاری یا indentation است. اگر در این مطلب و تمامی مطالب قبلی دقت کرده باشید در برخی از بلوکهای کد مثل شرطی و حلقههای for و while، ما چند فاصله از ابتدای خط دادهایم.
در اکثر زبانهای برنامهنویسی از این فاصلهگذاری برای خوانایی بیشتر استفاده میشود و اگر شما فاصلهگذاری نکنید برنامهتان از کار نمیافتد، اما در پایتون این فاصلهگذاری الزامی است و حتما باید رعایت شود.
اگر یک فایل پایتون به این فرمت بنویسیم و در ترمینال ران کنیم خطا میگیریم:
خروجی ترمینال:
File "/var/www/html/saeed.py", line 21
print('a is less than b')
^
IndentationError: expected an indented block
همانطور که مشاهده میکنید ارور IndentationError به ما برگردانده و در ادامه هم به وضوح نوشته که نیازمند indent میباشد.
شرط یک خطی
اگر فقط یک شرط داشته باشیم میتوانیم در یک خط بنویسیم و نیازی به بلوک کردن نیست. مثالهای زیر از شرطهای یک خطی if و else و elif میباشد.
# The First One
a = 20
b = 10
if a > b: print("a is greater than b")
# The Second One
a = 10
b = 20
print("a is greater") if a > b else print("b is greater")
# The Third One
a = 330
b = 330
print("a is greater") if a > b else print("both equal") if a == b else print("b is greater")
بیشتر
خروجی:
شرطی AND
زمانی از شرطی and استفاده میکنیم که هر دو سمت شرط مقدار صحیح یا True داشته باشند. تفاوتش با or این است که در or کافی است یکی از شرطها برقرار باشد اما در and همهی شرطها باید برقرار باشد.
چون هر دو شرط صحیح هست بنابراین عبارت تابع print را انتظار داریم که در خروجی ببینیم.
خروجی؛
شرطی OR
از شرطی or زمانی استفاده میکنیم که حداقل یکی از شرطها برقرار باشد.
- conditions in python
- if condition in python
- شرط در پایتون
- شرط if در پایتون
- else condition in python
- elif condition in python
- شرطی else پایتون
- شرطی elif پایتون
نظرات
Newly created comments need to be manually approved before publication, other users cannot see this comment until it has been approved.
Newly created comments need to be manually approved before publication, other users cannot see this comment until it has been approved.