در کدهای پایتون از دستور «if» برای تصمیمگیری استفاده میشود. با کمک عبارت if میتوانیم یک یا چند خط کد مشخص را به صورت شرطی اجرا کنیم. یعنی اینکه شرطی را مینویسیم. اگر این شرط برقرار بود، آن کدها اجرا میشوند. در غیر این صورت، برنامه از روی آن بخش عبور میکند. یعنی آن کدها را نادیده میگیرد. در زمان توسعه اپلیکیشنهای مختلف، موقعیتهای فراوانی پیش میآیند که در آنها اجرای بعضی از وظایف باید نسبت به شرایط فرق کند. توسعهدهندگان باید بتوانند این موقعیتها را مدیریت کنند. استفاده از ساختارهای شرطی مانند if باعث انعطافپذیری هرچه بیشتر برنامهها میشود. برای همین در این مطلب چند مثال برای دستور if در پایتون بررسی کردهایم.
آنچه در این مطلب میآموزید:
-
یاد میگیرید که چگونه با استفاده از دستور if-else رفتارهای مختلفی را برای هر شرط اجرا کنید.
-
میآموزید که چگونه با استفاده از elif چند شرط مختلف را در یک ساختار بررسی کنید.
-
روش استفاده از عملگرهای منطقی را برای پیادهسازی شرطهای پیچیده میآموزید.
-
با ساختار if تو در تو آشنا شده و روش نوشتن آن را یاد میگیرید.
-
روش نوشتن دستور if به صورت عملگر سهگانه را یاد میگیرید.
-
میآموزید چگونه هر کدام از بلوکهای if و elif و else را در یک خط تعریف کنید.

در این مطلب از مجله فرادرس با انواع روشهای استفاده از دستور if در پایتون آشنا میشویم. ابتدا توضیح مختصری درباره دستور if داده و ساختارهای مختلف پیادهسازی آن را نام میبریم. سپس با استفاده از ۱۹ مثال برای دستور if در پایتون تمام روشها را یک به یک بررسی میکنیم.
دستور if در پایتون چیست و چگونه استفاده میشود؟
در بیشتر زبانهای برنامه نویسی از دستور if برای اجرای عملیات خاصی بر اساس شرطهای مختلف استفاده میشود. در زندگی روزمره هم چنین موقعیتهایی به وجود میآیند. گاهی لازم است بر اساس شرایط، تصمیم بگیریم که چه کاری را چگونه انجام بدهیم. در زمان برنامه نویسی اپلیکیشنهای مختلف نیز با چنین موقعیتهایی روبهرو میشویم. در این موقعیتها از ساختارهای تصمیمگیری برای حل مسئله استفاده میکنیم. مهمترین ساختار تصمیمگیری در زبان برنامه نویسی پایتون، دستور if است.
از این دستور میتوان در قالبهای زیر استفاده کرد.
- if ساده
- ساختار if…else
- دستور if چندشاخه با استفاده از بلوک elif
- استفاده از if با شرطهای ترکیبی
- عبارت شرطی if یکخطی
- دستور if تو در تو

در ادامه مطلب، هر کدام از ساختارهای بالا را با کمک چند مثال متنوع بررسی کردهایم. در کل این مطلب، ۱۹ مثال برای دستور if در پایتون پیادهسازی شدهاند.
if ساده
کوتاهترین و سادهترین روش برای اجرای شرطی دستورات در پایتون، استفاده از if ساده است. در ساختار if ساده اگر شرط مورد نظر برقرار بود که کدهای مربوط به آن اجرا میشوند. در غیر این صورت، برنامه این قسمت از کدها را نادیده گرفته و ادامه کار خود را انجام میدهد.
یکی از روشهای بسیار خوب برای یادگیری مطالب برنامه نویسی استفاده از فیلمهای آموزشی است. اگر نسبت به عملکرد عبارتهای شرطی if و else در پایتون ناآشنا هستید، از فیلمهای آموزشی پایتون استفاده کنید. با مشاهده فیلم رایگان آموزش پایتون جادی – دستورات شرطی else و if از فرادرس میتوانید روش صحیح و ابتدایی کار با این ابزارها را بیاموزید. برای کمک به مخاطبان مجله، لینک این فیلم را در پایین نیز قرار دادهایم.
در کادر زیر، سینتکس مورد استفاده برای نوشتن if ساده را پیادهسازی کردهایم.
نکات مهم سینتکس بالا را در فهرست زیر نوشتهایم.
- در این سینتکس کلمه کلیدی if ثابت است.
- بهجای عبارت condition شرط خود را مینویسیم.
- بهجای عبارت # Statements to execute هم کدهایی را مینویسیم که در صورت برقرار بودن شرط باید اجرا شوند.
نکته: لازم به اشاره است که باید قائده مربوط به «دندانهگذاری» (indentation) را در پایتون رعایت کنیم. یعنی بدنهی شرط باید با فاصلهی مناسب، کمی جلوتر از کلمهی کلیدی if - به سمت راست – نوشته شود.
در فلوچارت پایین روش اجرای دستور if ساده را نشان دادهایم.

در ادامه مطلب چند مثال برای دستور if در پایتون بررسی کردهایم. در این مثالها روش استفاده از ساختار if ساده پیادهسازی کردهایم.
مثال اول بررسی بزرگتر کوچکتر بودن اعداد
در این مثال میخواهیم عدد 10 را با 5 مقایسه کنیم. اگر عدد 10 بزرگتر بود پیغام تایید آن را بر روی صفحهنمایش نشان میدهیم. در غیر این صورت، برنامه بدون نشان دادن عکسالعمل خاصی به پایان میرسد.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
10 greater than 5 Program ended
مثال دوم مقایسه دو متغیر
در این مثال برای دستور if در پایتون، میخواهیم مقدار درون دو متغیر مختلف را با کمک عبارت شرطی مقایسه کنیم. ابتدا دو متغیر x و y را مقداردهی میکنیم. در مسائل واقعی معمولا این مقادیر توسط کاربر یا از خارج از محیط برنامه گرفته میشوند. سپس این متغیرها را با هم مقایسه میکنیم. در صورت بزرگتر بودن x از y، کد دیگری اجرا میشود. در این مثال اگر x از y بزرگتر باشد، متغیر z را مقداردهی میکنیم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
Variable z is now 13.
مثال سوم ساختار if بدون عبارت شرطی
برای نوشتن شرطهای دستور if از عملگرهای مقایسهای استفاده میکنیم. نتیجه این شرط همیشه مقدار بولین است. یعنی یا True یا False است. در زبان پایتون تمام مقادیر معتبر به غیر از 0 و False و None معادل True هستند. بنابراین میتوانیم شرطها را بدون استفاده از عملگرهای مقایسهای و به شکل زیر هم بنویسیم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
y is yes
یادگیری پایتون با کمک فیلمهای فرادرس
پایتون، ترکیبی از قدرت، سادگی و انعطافپذیری است. در نتیجه به یکی از مشهورترین و پرکاربردترین زبانهای برنامه نویسی دنیا تبدیل شده. برای یادگیری برنامه نویسی با پایتون، منابع آموزشی متنوعی بوجود آمدهاند. آموختن برنامه نویسی با پایتون روش خوبی برای ورود به حوزههای طراحی وب، علم داده، توسعهدهنده نرمافزارهای دسکتاپ و غیره است. فیلمهای آموزشی، بهترین منبع برای یاد گرفتن این زبان هستند. استفاده از فیلمهای آموزشی نسبت به سایر منابع، مخصوصا در بحث برنامه نویسی و دیگر علوم کامپیوتری، مزیتهای بیشتری دارد.

فرادرس با تولید مطالب و فیلمهای آموزشی متنوع به یکی از بزرگترین تولیدکنندگان محتوای آموزشی فارسی زبان تبدیل شده است. فیلمهای مربوط به آموزش زبان پایتون جزو پرطرفدارترین گزینهها در بین فیلمهای فرادرس هستند. اگر در ابتدای مسیر یادگیری پایتون هستید، پیشنهاد میکنیم فیلم آموزش رایگان پایتون، برنامه نویسی سریع و آسان در ۱۴۰ دقیقه را از فرادرس مشاهده کنید. استفاده از فیلمهای مجموعه آموزش پایتون برای نوجوانان یکی از روشهای مناسب برای یادگیری بهتر این زبان برنامه نویسی است. در پایین چند فیلم از این مجموعه آموزشی را معرفی کردهایم.
ساختار if…else
بلوک دیگری به نام else هم میتوانیم به عبارت شرطی if اضافه کنیم. در ساختار قبلی اگر شرط if برقرار نبود برنامه، آن بخش را نادیده میگرفت. سپس به کار خود ادامه میداد. اما با وجود بلوک else، اگر شرط if برقرار نباشد، مفسر پایتون دستورات درون بلوک else را اجرا میکند.
در بخش پایین سینتکس، لازم برای استفاده از بلوک else را پیادهسازی کردهایم.
درباره این سینتکس باید به چند نکته مهم توجه کنیم. این نکات در فهرست پایین نوشته شدهاند.
- در سینتکس بالا کلمههای if و else ثابت هستند.
- بهجای عبارت condition شرط خود را مینویسیم.
- بهجای عبارت # Statements to execute بالایی کدهایی را مینویسیم که در صورت برقرار بودن شرط if باید اجرا شوند.
- بهجای عبارت # Statements to execute پایینی هم کدهایی را مینویسیم که در صورت برقرار نبودن شرط if باید اجرا شوند.
در فلوچارت پایین روش کار ساختار if…else را پیادهسازی کردهایم.

در ادامه، چند مثال برای دستور if در پایتون آوردهایم. با کمک این مثالها روش کار با بلوک else را نیز بررسی کردیم.
مثال چهارم بررسی مقدار متغیر x
در این مثال، مقداری به متغیر x اختصاص داده شده است. برنامه با استفاده از ساختار if…else بررسی میکند که آیا این مقداربرابر با 4 است یا نه. اگر مقدار x برابر با 4 بود در خروجی عبارت Yes چاپ میشود. در غیر این صورت عبارت No چاپ خواهد شد.
بعد از اجرای کد بالا عبارت No به عنوان خروجی در کنسول پایتون نمایش داده میشود.
مثال پنجم عکس العمل مناسب در بلوک else
در ساختار if ساده دیدیم که اگر شرط برقرار نباشد، برنامه آن را نادیده گرفته و ادامه کار خود را انجام میدهد. اما بعضی از وقتها لازم است که در صورت برقرار نبودن شرط هم عکسالعمل دیگری نشان بدهیم. برای انجام این کار از بلوک else استفاده میکنیم. کدهای نوشته شده در این بلوک در صورت برقراری شرط اجرا نمیشوند. فقط زمانی این کدها اجرا میشوند که شرط برقرار نباشد.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
x is smaller than y.
مثال ششم بررسی چند شرط مختلف با کمک if…else
برای بررسی چند شرط مختلف میتوانیم از ساختارهای if…else به صورت زنجیرهای استفاده کنیم. در این مثال، برنامه از ساختار if…else به صورت تو در تو برای بررسی مقدار متغیر استفاده کرده است.
- ابتدا مقداری را به متغیر letter اختصاص دادهایم.
- سپس با کمک ساختار تو در توی if…else محتوای این مقدار را بررسی میکنیم.
- با توجه به اینکه این مقدار B یا C یا A باشد، پیغام مناسبی به کاربر نمایش میدهیم.
- در نهایت اگر مقدار متغیر letter هیچ کدام از این کاراکترها نبود هم پیغام مناسبی نمایش داده خواهد شد.
در واقع «ساختار شرطی سلسله مراتبی» (Hierarchical Conditional Structure) را در این کد، پیادهسازی کردهایم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
letter is A
البته در پایتون سازوکاری تعبیه شده است که این ساختار به شکل کوتاهتر و خواناتری نوشته شود. این سازوکار را در بخش بعدی معرفی میکنیم.
دستور if چندشاخه با استفاده از بلوک elif
به دستور if چندشاخه با استفاده از بلوک elif، عبارت if-elif هم گفته میشود. با استفاده از عبارت if-elif زنجیره if…else-های تو در تو کوتاهتر میشوند. در انتهای بلوکهای elif هم میتوانیم بلوک else قرار بدیم. این بلوک زمانی اجرا میشود که هیچکدام از شرطهای بالا برقرار نباشند.
در کار زیر، سینتکس مورد استفاده برای پیادهسازی ساختار if-elif را نوشتهایم.
درباره سینتکس بالا توجه به چند نکته ضروری است.
- کلمههای کلیدی if و elif و else ثابت هستند.
- وجود بلوک else در این ساختار اختیاری است.
- هیچ محدودیتی در تعداد بلوک elif وجود ندارد.
- بهجای پارامترهای condition شرط مورد نظر خود را مینویسیم.
- بهجای عبارتهای statement دستورات مورد نظر خود را مینویسیم. این دستورات زمانی اجر میشوند که شرط بلوک شرط بلوک برقرار باشد.
- به محض اینکه اولین شرط برقرار شد، دستورالعمل مربوط به بلوک آن شرط اجرا میشود. بقیه شرطهای نوشته شده بعد از آن هرگز بررسی نمیشوند.
در فلوچارت زیر، تصویری از ساختار تصمیمگیری if-elif رسم شده است. در این تصویر یک بلوک if و دو بلوک elif و یک else وجود دارند.

برای کمک به درک بهتر مطلب، چند مثال برای دستور if در پایتون با ساختار if-elif را بررسی میکنیم.
مثال هفتم چند شرط مختلف با ساختار if-elif-else
در این مثال برای ارزیابی مقدار ذخیره شده در متغیر letter از ساختار if-elif-else استفاده کردهایم. در واقع میخواهیم مثال ششم را به شکل کوتاهتر و خواناتری بنویسیم. با توجه به اینکه کدام کاراکتر B یا C یا A در متغیر ذخیره شده، برنامه پیغام متناسبی را در خروجی چاپ میکند. در کد پایین، برنامه شرطهای مختلفی را یک به یک بررسی میکند. سپس بر اساس مقدار متغیر، تصمیم میگیرد که چه عکسالعملی از خود بروز دهد.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
letter is A
مثال هشتم مقایسه دو متغیر مختلف
در این مثال، ابتدا دو مقدار مختلف به متغیرهای x و y اختصاص دادهایم. سپس آنها را با استفاده از ساختار if-elif-else با همدیگر مقایسه میکنیم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
x is equal to y.
مثال نهم تصمیمگیری بر اساس آب و هوا
در این مثال ساده، روش تصمیمگیری برنامهها را با استفاده از شرایط دنیای واقعی نشان دادهایم. همیشه شرطها باید بر اساس اولویت نوشته شوند. زیرا با برقرار بودن شرط اول سایر شرطها بررسی نمیشوند. در کدهای زیر ساختار تصمیمگیری به این صورت است که اگر فردا هوا گرم باشد به دریا میرویم. اگر هوا بسیار داغ باشد به جنگل میرویم و اگر آسمان بارانی باشد در منزل میمانیم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
I'll go to the sea
استفاده از if با شرطهای ترکیبی
در زبان برنامه نویسی پایتون برای ترکیب کردن چندین شرط مختلف در یک عبارت میتوانیم از ترکیب عملگرهای مقایسهای و منطقی استفاده کنیم. استفاده از این عملگرها به برنامه نویس کمک میکنند که فرایندهای تصمیمگیری پیچیدهای را پیادهسازی کند. عملگرهای منطقی قابل استفاده در پایتون and و or و not هستند.
در ادامه ۳ مثال برای دستور if در پایتون آوردهایم. در تمام این مثالها از دستور if به وسیله شرطهای ترکیبی استفاده کردیم.
مثال دهم بررسی دما
در مثال زیر، متغیری را برای ذخیره دما به نام temp تعریف کردهایم. این متغیر مقدار دما را از کاربر دریافت میکند. سپس برنامه با توجه به مقدار دما عکسالعمل، نشان میدهد.
بعد از اجرای کد بالا و با فرض اینکه کاربر عدد 20 را وارد کرده باشد، خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
c:/Users/m.rashidi/pythontest/Faradars_method_test.py Enter the temperature: 20 It's not a hot day. It's not a hot day.
نکته: در مثال بالا شرطهای if اول و if سوم درست ارزیابی شدهاند. چون این if-ها به صورت زنجیرهای یا تو در تو بهم متصل نیستند، همگی ارزیابی میشوند. اما اگر شرطهای این کد به صورت if-elif نوشته شده بودند، بعد از درست ارزیابی شدن شرط اول، بقیه شرطها بررسی نمیشدند.

مثال یازدهم تحلیل اعداد
استفاده از شرطهای ترکیبی، کاربرد زیادی در برنامههای بزرگ و پیچیده دارد. در این مثال، روش جدا کردن عددهای خاص از داخل یک لیست را بررسی میکنیم. فرض کنیم که لیست nums شامل اعداد 1 تا 14 است. باید تمام اعداد کوچکتر از 3 یا بزرگترمساوی عدد 10 را پیدا کنیم. روش کار این کد را در فهرست پایین نوشتهایم.
- ابتدا لیست خالی برای نگهداری اعداد بدست آمده ایجاد میکنیم.
- سپ با کمک حلقه for بر روی لیست nums پیمایش میکنیم.
- در هر گردش با استفاده از عبارت شرطی if این اعداد را جدا کرده و در لیست – ساخته شده در خط ۱ – ذخیره میکنیم.
- برای این کار، ابتدا دو شرط مقایسهای نوشتهایم. سپس آنها را با عملگر or با هم ترکیب کردیم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
[1, 2, 10, 11, 12, 13, 14]
مثال دوازدهم ترکیب عملگرهای منطقی
در این مثال، شرط پیچیدهتری را بررسی کردهایم. برنامه نویس میتواند چندین عملگر منطقی مختلف را در کنار هم و در یک عبارت به کار ببرد. از همان لیست nums استفاد میکنیم. اکنون باید تمام اعداد زوج کوچکتر از 3 یا بزرگترمساوی 10 را پیدا کنیم. یعنی باید از شرط دیگری هم برای بخشپذیری اعداد بر ۲ استفاده کنیم.
برای مشخص کردن زوج بودن اعداد از عملگر % در پایتون، استفاده میکنیم. عملگر % برای محاسبه باقیمانده تقسیم به کار میرود. اعدادی که باقیمانده تقسیم آنها بر 2 برابر با 0 است، زوج هستند. عملگر % زیرمجموعهای از عملگرهای مربوط به تقسیم در پایتون است. برای آشنایی با این دسته از عملگرها میتوانید مطلب مربوط به آنها را در مجله فرادرس مطالعه کنید.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
[2, 10, 12, 14]
دستور if تو در تو
میتوانیم از دستور if در داخل دستور if دیگری استفاده کنیم. به این ساختارهای شرطی «عبارت if تو در تو» (Nested If Statement) گفته میشود. یعنی آن که ساختار if درونی فقط به شرطی بررسی میشود که شرط مشخص شده در if بیرونی درست باشد. با این روش، توسعهدهندگان میتوانند برقرار بودن چند شرط مختلف را پشت سر هم بررسی کنند.
در فلوچارت پایین روش کار عبارت if تو در تو را رسم کردهایم. در این ساختار دو if مختلف درون یکدیگر تعبیه شدهاند.

مثال سیزدهم مدیریت شرایط تو در تو
در این مثال برای مقایسه مقدار متغیر a و عدد 15 و 5 از عبارت if تو در تو استفاده کردهایم. ابتدا بررسی میکنیم که آیا متغیر a از 5 بزرگتر است یا نه. اگر شرط برقرار بود، سپس بررسی میکنیم که آیا این عدد از 15 کوچکتر یا مساوی با آن است یا نه. اگر شرط اول برقرار باشد در خروجی عبارت Bigger than 5 را چاپ میکنیم. اگر شرط دوم هم برقرار باشد، در خروجی عبارت Between 5 and 15 چاپ میشود. در واقع در این کد، از عبارت شرطی سلسله مراتبی استفاده کردهایم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
Bigger than 5 Between 5 and 15
مثال چهاردهم تعبیه چند if در یک if
هیچ محدودیتی در تعداد if-های مجاز برای نوشتن در if بیرونی وجود ندارد. همه این if-ها را میتوانیم به صورت سلسله مراتبی بنویسیم. همینطور که در مثال قبل دیدیم. همچنین میتوان چند if مختلف را موازی هم نیز نوشت. وقتی if-ها را به صورت موازی هم – در سطح دندانهگذاری یکسان – مینویسیم، تمام آنها یک به یک بررسی میشوند. یعنی برقرار بودن یا شکست شرط یکی از if-ها تاثیری بر روی بررسی سایر if-ها ندارد. در مثال پایین، روش تعبیه چند if در کنار هم و در داخل if بیرونی را بررسی کردهایم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
i is smaller than 15 i is smaller than 12 too
مثال پانزدهم ترکیب ساختارهای مختلف به صورت تو در تو
زبان برنامه نویسی پایتون بسیار انعطافپذیر است. توسعهدهندگان پایتون میتوانند ساختارهای مختلف را با همدیگر ترکیب کرده و استفاده کنند. در این مثال برای دستور if در پایتون، از ساختار if-elif-else در ساختار if-elif-else بیرونی استفاده کردهایم. عبارت شرطی در if بیرونی از نوع شرطهای ترکیبی است.
در کادر پایین، مقداری را به عنوان نمره در متغیر mark ذخیره کردهایم. سپس با توجه به نمره بدست آمده برنامه به کاربر عکسالعمل نشان میهد.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
Well done!
یادگیری مفاهیم پیشرفته پایتون با کمک فرادرس
تسلط بر روی مفاهیم پیشرفته پایتون باعث میشود که توسعهدهندگان به موقعیتهای شغلی مختلفی دسترسی داشته باشند. زیرا پایتون در حوزههای گوناگون به کار برده میشود. این زبان، کتابخانههای متنوعی دارد. یادگیری پایتون در مراحل اولیه ساده است. اما برای کسب مهارت و آشنا شدن با تکنیکهای پیشرفته باید تمرکز و انرژی بیشتری صرف کنیم. فرادرس مجموعهای از فیلمهای آموزشی را برای زبان پایتون تولید کرده است. هدف فرادرس این است که مخاطبانش به راحتی و بدون سردرگمی روش استفاده از مفاهیم پیشرفته را یاد بگیرند.
در پایین، چند مورد از فیلمهای آموزشی مربوط به پایتون را معرفی کردهایم.

عبارت شرطی if یکخطی
گاهی از اوقات، دستورالعلهای موجود در if و else فقط یک خط کد هستند. در این صورت میتوانیم از عبارت if به شکل یکخطی هم استفاده کنیم. دو سینتکس مختلف برای نوشتن شرط یکخطی وجود دارند.
- استفاده از عملگر سهگانه در پایتون
- نوشتن کد هر کدام از بلوکها در شرط if به صورت یکخطی
در ادامه این بخش، هر دو مورد بالا را به ترتیب بررسی کردهایم.
استفاده از عملگر سهگانه در پایتون
در سینتکس اول – عملگر سهگانه در پایتون – شرط و دستورالعمل هر دو یک خط کد هستند. در پایین، سینتکس این روش را نوشتهایم.
تکنیک عملگر سهگانه در پایتون با سایر عبارتهای if فرق دارد. از این روش به عنوان ساختار کنترلی برای مدیریت روش اجرای برنامه استفاده نمیشود. بیشتر مانند عملگری است که دستور خاصی را با شرط مشخص شده اجرا میکند.
- در سینتکس بالا کلمههای کلیدی if و else ثابت هستند.
- ابتدا شرط <conditional_expr> بررسی میشود.
- اگر این شرط برقرار بود دستور <expr1> اجرا میشود.
- در غیر این صورت دستور <expr2> اجرا میشود.
ترتیب اجرای عبارتها در این تکنیک کمی سردرگم کننده است. اول عبارت وسط ارزیابی میشود. سپس بر اساس درست یا غلط بودن آن یکی از دستورات دو طرف عبارت اجرا میشوند. در واقع با کمک این تکنیک، ساختار کد زیر را:
به کد زیر تبدیل میکنیم.
با هدف بررسی این ساختار نیز چند مثال برای دستور if در پایتون، نوشتهایم.
مثال شانزدهم بررسی مثبت و منفی بودن عدد
در کد پایین مقداری را به متغیر a اختصاص دادهایم. سپس با کمک دستور شرط if یکخطی، هم مثبت و منفی بودن عدد را بررسی کردیم و هم مقدار نتیجه را در متغیری به نام res ذخیره میکنیم. در خط آخر، مقدار متغیر res در خروجی چاپ شده است.
بعد از اجرای کد بالا عبارت Negative به عنوان خروجی در کنسول پایتون نمایش داده میشود.
مثال هفدهم ساختن متن با کمک if یکخطی
در کاد پایین چند مثال مختلف به صورت همزمان در کنار هم نوشته شدهاند. در تمام این مثالها از تکنیک if یک خطی برای اجرای عملیات استفاده کردهایم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
Let's go to the beach Let's go to the library minor
نوشتن شرط if به صورت یکخطی
برای نوشتن دستور if یک خطی میتوانیم از سینتکس زیر هم استفاده کنیم.
نکات مهم سینتکس بالا را در فهرست زیر نوشتهایم.
- در این سینتکس کلمه کلیدی if ثابت است.
- <expr> شرطی است که باید بررسی شود.
- عبارتهای <statement_1> و <statement_2> و غیره هم دستورهایی هستند که در صورت برقراری شرط باید اجرا بشوند.

توجه: در این ساختار اولویت اجرای عملگر سمیکالن ; بالاتر از اولویت اجرای عملگر : بعدا از <expr> است. در اصلاح کامپیوتری گفته میشود که نقطه و ویرگول ارتباط محکمتری نسبت به دو نقطه با هم دارند. بنابراین تمام عبارتهای بعد از دو نقطه در یک گروه دستهبندی میشوند. یعنی آنکه یا همه آنها با هم اجرا میشوند. یا هیچ کدام از عبارتهای <statement> جرا نمیشوند.
در ادامه این بخش، ۲ مثال برای دستور if در پایتون بررسی شدهاند. برای کمک به درک بهتر مطلب، در هر کدام از این مثالها با چند کد مختلف if یکخطی را پیادهسازی کردهایم.
مثال هجدهم اجرای چند دستور مختلف با کمک شرط یک خطی
در کادر زیر دو بار از دستور if به صورت یکخطی استفاده کردهایم. در حالت اول شرط برقرار است و در حالت دوم شرط برقرار نیست.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
1 2 3
با توجه به خروجی بالا وقتی شرط برقرار بود، تمام عبارتهای نوشته شده بعد از : پشت سر هم اجرا شدند. اما وقتی شرط False شد – در کد خط ۳ – هیچ کدام از این عبارتها اجرا نشدند.
مثال نوزدهم پیادهسازی elif و else در یک خط
با استفاده از این تکنیک میتوانیم بلوکهای elif و else را هم در خطوط جداگانهای همراه با دستوراتشان بنویسیم.
بعد از اجرای کد بالا خروجی زیر تولید شده و در کنسول پایتون نمایش داده میشود.
qux quux corge grault
جمعبندی
دستور if ابزار اصلی برای پیادهسازی ساختارهای تصمیمگیری در برنامه نویسی است. استفاده از این ساختار، انعطافپذیری برنامهها را افزایش میدهد. این دستور در قالبهای مختلفی مانند if ساده، شرطهای ترکیبی، if تو در تو، if یکخطی و if…else و if-elif استفاده میشود. در زمان نوشتن ساختار if میتوانیم از عملگرهای منطقی and و or و not برای تعریف شرایط پیچیده استفاده کنیم.
در این مطلب از مجله فرادرس ۱۹ مثال برای دستور if در پایتون ارائه شدهاند. در این مثالها روشهای مختلف استفاده از if را برای مقایسه اعداد، تحلیل دادهها و غیره بررسی کردهایم. رعایت سینتکس و دندانهگذاری صحیح در پایتون برای اجرای درست شرطها ضروری است. استفاده از if به توسعهدهندگان کمک میکند تا برنامههایی انعطافپذیر، کارآمد و دقیق طراحی کنند.
source