در علوم کامپیوتر، شرط ها دستورات زبان برنامه نویسی برای مدیریت تصمیمات هستند. دستور if به شما این امکان را می دهد که بر اساس درست یا نادرست بودن یک شرط مشخص، کنترل کنید که آیا برنامه وارد بخشی از کد می شود یا خیر. یکی از عملکردهای مهم دستور if این است که به برنامه اجازه می دهد تا یک عملیات را بر اساس ورودی کاربر انتخاب کند. به عنوان مثال، با استفاده از دستور if برای بررسی رمز عبور وارد شده توسط کاربر، برنامه شما می تواند تصمیم بگیرد که آیا کاربر اجازه دسترسی به برنامه را دارد یا خیر.

 

راهنمای مطالعه

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

دستور else در پایتون

دستور elif در پایتون

دستور if تودرتو در پایتون

دستور if تک خطی در پایتون

 

# دستورات شرطی در پایتون

هنگام نوشتن برنامه ، ممکن است بخواهید یک بلوک کد فقط در صورت برآورده شدن شرایط خاصی اجرا شود. در اینجاست که جملات شرطی وارد می شوند. جملات شرطی به شما امکان می دهند جریان برنامه خود را به طور موثرتری کنترل کنید. دستور if در پایتون برای تصمیم گیری استفاده می شود. اگر یک شرط مشخص شده برابر با True باشد، دستوراتی که داخل بلاک if هستند اجرا میشوند در غیر این صورت، دستورات داخل if اجرا نمی شوند.

 

در پایتون، بدنه شرط if با تورفتگی نشان داده می شود. بدنه با تورفتگی شروع می شود و اولین خط بدون تورفتگی پایان را مشخص می کند. پایتون مقادیر غیر صفر را به عنوان True تفسیر می کند. None و 0 به عنوان False تفسیر می شوند.

 

سینتکس دستور if به شکل زیر است:

if <expr>:
    <statement>

 

ساختار شرط if به شکل زیر است:

  • expr شرطی است عبارتی است که درست یا نادرست بودن آن ارزیابی میشود.
  • statement دستوراتی هستند که در زمان درست بودن شرط، اجرا خواهند شد.

 

برای مثال به کد زیر دقت کنید:

>>> x = 0
>>> y = 5

>>> if x < y:
...     print('yes')
...
yes

 

در کد بالا با استفاده از شرط if بررسی کرده ایم که آیا متغیر x از متغیر y کوچکتر است یا خیر. از آنجایی که شرط نوشته شده درست(True) است، دستورات داخل بلاک if اجرا شده اند.

 

پایتون از عملگرهای مختلفی پشتیبانی میکند که میتوانید در شرط ها استفاده کنید:

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

 

 

# دستور else در پایتون

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

 

ساختار بلاک else به شکل زیر است:

if <expr>:
    <statement(s)>
else:
    <statement(s)>

 

اگر <expr> درست باشد، دستورات بلاک if اجرا می شوند و دستورات بلاک else حذف شده و اجرا نمی شوند. اگر <expr> نادرست باشد، دستورات بلاک if حذف شده و دستورات بلاک else اجرا می شوند. همانطور که در بالا توضیح داده شد، هر دو بلاک کد با تورفتگی تعریف می شوند.

 

به مثال زیر دقت کنید. در این مثال، x کمتر از 50 است، بنابراین دستورات بلاک if اجرا می شوند و بلاک else حذف می شوند:

>>> x = 20

>>> if x < 50:
...     print('x is small')
... else:
...     print('x is large')

x is small

 

اما در مثال پایین، x بزرگتر از 50 است، بنابراین فقط بلاک else اجرا میشوند:

>>> x = 120

>>> if x < 50:
...     print('x is small')
... else:
...     print('x is large')

x is large

 

 

# دستور elif در پایتون

دستور elif به شما این امکان را می دهد که چندین عبارت را بررسی کنید و به محض اینکه یکی از شرایط به True ارزیابی شد، یک بلوک کد را اجرا کنید. دستور elif بعد از دستور if و قبل از دستور else ظاهر می شوند. می توانید از هر تعداد دستور elif که می خواهید استفاده کنید. مانند بلاک else، دستور elif نیز اختیاری است.

 

سینتکس دستور elif پایتون به شکل زیر است:

if <expr>:
    <statement(s)>
elif <expr>:
    <statement(s)>
elif <expr>:
    <statement(s)>
    ...
else:
    <statement(s)>

 

در زمان استفاده از elif ممکن است یک یا چند شرط بررسی شوند. اولین expr که درست باشد اجرا خواهد شد بقیه بلاک های کد نادیده گرفته خواهند شد حتی اگر شرط دیگری نیز در ادامه درست باشد. به مثال زیر دقت کنید:

>>> name = 'Joe'
>>> if name == 'Fred':
...     print('Hello Fred')
... elif name == 'Xander':
...     print('Hello Xander')
... elif name == 'Joe':
...     print('Hello Joe')
... elif name == 'Arnold':
...     print('Hello Arnold')
... else:
...     print("I don't know who you are!")
...
Hello Joe

 

در کد بالا، نام کاربر را در چند شرط مختلف بررسی میکنیم و اولین شرطی که درست باشد بلوک آن را اجرا خواهیم کرد. اگر هیچ یک از شرط ها درست نباشند بلاک else اجرا خواهد شد.

 

 

# دستور if تو در تو در پایتون

ممکن است شرایطی پیش بیاید که بخواهید بعد از اینکه یک شرط به درستی ارزیابی شد، شرایط دیگری را بررسی کنید. در چنین شرایطی می توانید از ساختار if تو در تو استفاده کنید. شرط تو در تو به دستور if گفته میشود که در داخل یک دستور if دیگر باشد.

 

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

 

دو راه اصلی برای ایجاد دستور if تودرتو وجود دارد. اولین گزینه این است که دستور if را در یک بلوک کد if دیگر قرار دهید. گزینه دیگر این است که دستور if را در کد else یک عبارت if/else قرار دهید.

 

بنابراین اولین رویکرد از ما می‌خواهد که یک if را در داخل if دیگری قرار دهیم:

if conditionA:
        # Code that executes when 'conditionA' is True

        if conditionB:
            # Code that runs when 'conditionA' and
            # 'conditionB' are both True

 

پایتون این دستور if تودرتو را زمانی ارزیابی می کند که شرط عبارت if قبلی True باشد. وقتی شرط A برابر False باشد، دستور if تودرتو ما هرگز اجرا نمی شود حتی زمانی که شرط B خودش True باشد.

 

توجه داشته باشید که وقتی دستور if اول True باشد، اجرای if دوم تضمینی نیست و شرط دستور if تودرتو نیز باید True باشد. بنابراین کد دستور if تودرتو زمانی اجرا می شود که شرط A و شرط B همزمان برابر True باشند. اگر یکی یا هر دو False باشد، آن کد اجرا نمی شود.

 

راه دوم برای ساختن یک دستور if تودرتو، قرار دادن دستور if در داخل کد else یک دستور if/else است:

if conditionA:
        # Code here executes when 'conditionA' is True
else:
        # Code that runs when 'conditionA' is False

        if conditionB:
            # Code that runs when 'conditionA' is False
            # and 'conditionB' is True

 

حالا دستور if تو در تو تنها زمانی می تواند اجرا شود که شرط دستور if/else اول False باشد. زیرا وقتی آن شرط True باشد، بلوک کد حاوی دستور if تودرتو هرگز اجرا نمی شود.

 

 

# دستور if تک خطی در پایتون

یکی از ویژگی های خوب دستورات if در پایتون این است که میتوانید آنها را در یک خط بنویسید. دستورات if تک خطی بسیار مفید هستند زیرا به برنامه نویس اجازه میدهند در عین حفظ کیفیت، کد کوتاهتری بنویسد. دستورات if تک خطی برای نوشتن شرط های ساده مناسب است و نباید شرط ها پیچیده را با این روش بررسی کنید زیرا باعث ناخوانایی کد شما میشود. به دستورات تک خطی در پایتون عملگر سه گانه یا ternary operator نیز گفته میشود.

 

برای ساخت یک دستور if یک خطی باید آن را در قالب خاصی بنویسیم:

some_expression if condition else other_expression

 

برای مثال به کد زیر دقت کنید:

>>> age = 20
>>> "Minor" if age < 18 else "Adult"
Adult

 

در کد بالا بررسی میکنیم که اگر سن کاربر بزرگتر از 18 بود کلمه Adult و اگر کوچکتر از 18 بود Minor را نمایش دهد.

 

قرار دادن همه چیز در یک خط کار خوبی نیست. از این مهمتر، در پایتون تعداد کاراکترهای یک خط نباید از 80 بیشتر باشد. به همین دلیل است که پایتون از بلاک elif تک خطی پشتیبانی نمیکند.



0

Intro

10:38

رایگان

1

Variable

12:30

رایگان

2

String

19:22

رایگان

3

List

8:46

رایگان

4

While

9:6

رایگان

5

If

8:37

رایگان

6

For

6:12

رایگان

7

range

4:17

رایگان

8

break, continue, pass

9:15

رایگان

9

Function

12:32

رایگان

10

List methods

12:11

رایگان

11

Tuple

8:29

رایگان

12

Set

7:47

رایگان

13

Dictionary

9:19

رایگان

14

Module

10:40

رایگان

15

fstring

5:35

رایگان

16

format

7:34

رایگان

17

File

17:14

رایگان

18

Scope

6:25

رایگان

19

OOP

12:15

رایگان

20

Method

20:19

رایگان

21

class/instance variable

14:7

رایگان

22

class/static method

13:25

رایگان

23

Inheritance

17:6

رایگان

24

Special methods

9:50

رایگان

25

Access points

11:12

رایگان

26

property

6:54

رایگان

27

Exceptions

21:17

رایگان

28

Standard library

12:51

رایگان

29

Docstring

10:49

رایگان

30

Virtualenv

11:2

رایگان

دوره های پیشنهادی

دوره آموزش طراحی دیتابیس
دوره آموزش طراحی دیتابیس
تکمیل ضبط
امیرحسین بیگدلو
دوره آموزش ریاضیات یادگیری ماشین
دوره آموزش ریاضیات یادگیری ماشین
تکمیل ضبط
امیرحسین بیگدلو
دوره اول آموزش فلسک(Flask)
دوره اول آموزش فلسک(Flask)
تکمیل ضبط
امیرحسین بیگدلو



ارسال نظر


ممد

1 سال قبل پاسخ به نظر

سلام
میخوام بنویسم
اگه ایینپوت 1 بود فلان کارو انجام بده
اگه 2 بود فلان الی اخر

چجوری میشه؟؟؟؟

ارسال نظر



امیرحسین بیگدلو

1 سال قبل

سلام
فکر کنم توی همین ویدیو توضیح دادم که باید از elif استفاده کنید

سینا

1 سال قبل پاسخ به نظر

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

ارسال نظر



امیرحسین بیگدلو

1 سال قبل

سلام
متاسفانه اطلاعی ندارم

رسول

2 سال قبل پاسخ به نظر

عالی بود

ارسال نظر



ارسلان

2 سال قبل پاسخ به نظر

04:14
سلام ، ویدیوی if از این دقیقه قطع میشه و بقیه ش لود نمیشه

ارسال نظر



امیرحسین بیگدلو

2 سال قبل

سلام
ممنون از شما. مشکل برطرف شد.

نسیم

2 سال قبل پاسخ به نظر

سلام
ببخشید من وقتی بوم رو باز میکنم پشت صفحه ی خودِ پایتون باز میشه مشکلش چیه؟ یه بارم حذفش کردم دوباره نصب کردم بازم درست نشد

ارسال نظر



امیرحسین بیگدلو

2 سال قبل

سلام
نمیدونم والا

مونگارد