
شرط if در پایتون
May 2022
شرط if در پایتون چیست؟
هنگام نوشتن برنامه ، ممکن است بخواهید یک بلوک کد فقط در صورت برآورده شدن شرایط خاصی اجرا شود. در اینجاست که جملات شرطی وارد می شوند. جملات شرطی به شما امکان می دهد جریان برنامه خود را به طور موثرتری کنترل کنید. دستور if… elif… else
در پایتون برای تصمیم گیری استفاده می شود.
دستور Python if ارزیابی می کند که آیا شرط برابر است با درست یا نادرست. اگر یک شرط مشخص شده برابر با true باشد ، دستور بلاک کد را اجرا می کند. در غیر این صورت ، بلوک کد درون دستور if اجرا نمی شود.
if test expression:
statement(s)
در اینجا ، برنامه test expression
را ارزیابی می کند و فقط در صورتی که عبارت آزمون True
باشد ، دستور (ها) را اجرا می کند. اگر test expression
نتیچه False باشد، عبارت (ها) اجرا نمی شود.
در پایتون ، بدنه عبارت if با تورفتگی نشان داده می شود. بدنه با تورفتگی شروع می شود و با اولین خط بدون تورفتگی پایان را مشخص می کند. پایتون مقادیر غیر صفر را به عنوان True تفسیر می کند. None و 0 به عنوان False تفسیر می شوند.
بیایید برنامه ای بنویسیم که قیمت سفارش ساندویچ را چاپ کند. قیمت سفارش ساندویچ تنها در صورتی نمایش داده می شود که مشتری رول ژامبون سفارش داده باشد. سفارش ساندویچ ما یک رشته پایتون است. در اینجا کد برنامه ما آمده است:
sandwich_order = "Ham Roll"
if sandwich_order == "Ham Roll":
print("Price: $1.75")
نتیجه به شکل Price: $1.75
خواهد بود.
ما یک متغیر به نام sandwich_order اعلام کرده ایم. به این متغیر مقدار Ham Roll اختصاص داده شده است. ما از دستور if برای بررسی اینکه آیا sandwich_order برابر Ham Roll است استفاده می کنیم. اگر شرط ما درست باشد ، عبارت print () ما اجرا می شود. اگر شرایط ما اشتباه باشد ، هیچ اتفاقی نمی افتد.
متغیر sandwich_order ما برابر Ham Roll است. این بدان معناست که دستور if ما اجرا می شود. حال ، بیایید ببینیم وقتی سفارش ساندویچ خود را به Cheese Roll تغییر می دهیم ، چه اتفاقی می افتد:
sandwich_order = "Cheese Roll"
if sandwich_order == "Ham Roll":
print("Price: $1.75")
کد ما چیزی بر نمی گرداند. به عبارت print () در کد ما فرصت اجرا داده نمی شود. این به این دلیل است که سفارش ساندویچ ما با Ham Roll برابر نیست.
دستور if...else در پایتون
یک دستور if… else
پایتون بررسی می کند که آیا شرط صحت دارد یا خیر. اگر شرطی صادق باشد ، دستور if اجرا می شود. در غیر این صورت دستور else اجرا می شود.
تا کنون ، از دستور if برای بررسی اینکه آیا شرط خاصی برآورده شده یا نه استفاده کرده ایم. اما اگر بخواهیم کاری انجام دهیم اگر شرایطی برآورده نشده باشد ، چه کنیم؟
فرض کنید ما در حال ساخت برنامه ای هستیم که بررسی می کند آیا مشتری در یک رستوران محلی دارای برگه بوده است یا خیر. اگر مشتری برگه ای بیش از 20 دلار داشته باشد، قبل از سفارش غذای بیشتر باید آن را پرداخت کند. اگر مشتری دارای برگه ای بیش از 20 دلار نباشد ، نباید اتفاقی بیفتد.
tab = 29.95
if tab > 20:
print("This user has a tab over $20 that needs to be paid.")
else:
print("This user's tab is below $20 that does not require immediate payment.")
کد ما مقدار This user has a tab over $20 that needs to be paid را برمیگرداند.
بیایید نحوه عملکرد کد ما را بررسی کنیم. ابتدا یک متغیر پایتون به نام tab اعلام می کنیم. این متغیر برگه مشتری را ردیابی می کند. ما از دستور if برای بررسی اینکه آیا برگه مشتری بیشتر از 20 است یا خیر استفاده می کنیم.
اگر ارزش برگه یک مشتری بیش از 20 دلار باشد ، دستور print () بعد از دستور if ما اجرا می شود. در غیر این صورت ، عبارت print () بعد از Python ما در صورت… else اجرا می شود.
از آنجا که برگه مشتری ما بیش از 20 دلار است ، مترجم پایتون دستور if ما را اجرا می کند. این به برنامه ما دستور می دهد که یک پیام را روی کنسول چاپ کند. این پیام به ما می گوید که مشتری باید برگه خود را پرداخت کند.
بگذارید برگه مشتری را روی $ 0 قرار دهیم و ببینیم چه اتفاقی می افتد:
tab = 0
if tab > 20:
print("This user has a tab over $20 that needs to be paid.")
else:
print("This user's tab is below $20 that does not require immediate payment.")
# OUTPUT
This user's tab is below $20 which does not require immediate payment.
کد ما خروجی متفاوتی را برمی گرداند. برگه مشتری بیش از 20 دلار نیست. این بدان معناست که محتویات عبارت else ما به جای دستور if ما اجرا می شود.
دستور elif در پایتون
در صورت عدم رعایت همه شرایط قبلی ، بیانیه پایتون elif شرط دیگری را بررسی می کند. آنها بعد از دستور if و قبل از دستور else ظاهر می شوند. می توانید از هر تعداد دستور elif که می خواهید استفاده کنید.
در مثال فوق ، ما یک گزاره شرطی با دو نتیجه احتمالی ایجاد کردیم. اگر برگه کاربر بالای 20 دلار بود ، پیامی روی کنسول چاپ می شد. اگر برگه کاربر زیر 20 دلار بود ، پیام متفاوتی روی کنسول چاپ می شد. در برخی موارد ، ممکن است بخواهیم شرایط متعددی را ارزیابی کرده و برای هر یک از آن شرایط نتایج ایجاد کنیم. اینجاست که شرایط elif مطرح می شود.
بیایید به مثال ساندویچ قبلی خود برگردیم. فرض کنید ما می خواهیم چهار خروجی بالقوه از برنامه خود داشته باشیم ، بسته به نوع ساندویچی که مشتری انتخاب می کند. اینها هستند:
- Ham Roll: $1.75
- Cheese Roll: $1.80
- Bacon Roll: $2.10
- Other Filled Roll: $2.00
ما می توانیم از کد زیر برای محاسبه هزینه سفارش مشتری استفاده کنیم:
sandwich_order = "Bacon Roll"
if sandwich_order == "Ham Roll":
print("Price: $1.75")
elif sandwich_order == "Cheese Roll":
print("Price: $1.80")
elif sandwich_order == "Bacon Roll":
print("Price: $2.10")
else:
print("Price: $2.00")
کد ما نتیجه Price: $2.10
را برمیگرداند.
کد ما چهار نتیجه احتمالی دارد:
- اگر مشتری سفارش ham roll را داد ، محتویات عبارت "if" اجرا می شود. این "قیمت: 1.75 دلار" را روی کنسول چاپ می کند.
- اگر مشتری cheese roll سفارش دهد ، محتویات اولین دستور "elif" اجرا می شود. این "قیمت: 1.80 دلار" را روی کنسول چاپ می کند.
- اگر مشتری یک bacon roll سفارش دهد ، محتویات عبارت دوم "elif" اجرا می شود. این "قیمت: 2.10 دلار" را روی کنسول چاپ می کند.
- اگر مشتری چیزی متفاوت سفارش دهد ، "قیمت: 2.10 دلار" را روی کنسول نمایش می دهیم.
ما از دستور if برای آزمایش شرایط خاصی استفاده کردیم. دو بلوک elif ما برای آزمایش شرایط جایگزین. در صورت عدم رعایت شرایط ، عبارت else مقدار را برمی گرداند.
در صورت تمایل می توانیم دستورات elif بیشتری را به کد بالا اضافه کنیم. اگر یک Tuna Roll جدید به منوی ساندویچ خود معرفی کنیم ، می توانیم یک دستور elif جدید اضافه کنیم. این بیانیه جدید می تواند قیمت مورد جدید منو را روی کنسول چاپ کند.
دستور if تودرتو در پایتون
دستور if تودرتو عبارت if در داخل دستور if دیگر است. اگر عبارات تو در تو باشند به شما امکان می دهد بررسی کنید که آیا شرطی پس از برآورده شدن شرط دیگر برآورده شده است یا خیر. بیایید به مثال ساندویچ قبلی خود برگردیم. فرض کنید می خواهیم بررسی کنیم که آیا مشتری رولی سفارش داده است که در منوی ما وجود دارد یا خیر. ما می خواهیم این کار را قبل از بررسی قیمت سفارش مشتری انجام دهیم.
اگر مشتری ساندویچ سفارشی دیگری سفارش داده باشد، باید پیغامی با قیمت پیش فرض ما برای موارد غیر منو چاپ شود. ساندویچ های سفارشی ساندویچی هستند که در منوی ما نیستند (مانند رول کره ای ، یا رول مربا). با این حال ، اگر مشتری ساندویچی را که در منوی ما است سفارش داده است ، باید قیمت آن ساندویچ را بررسی کنیم. ما می توانیم با استفاده از این کد این کار را انجام دهیم:
sandwich_order = "Other Filled Roll"
if sandwich_order != "Other Filled Roll":
if sandwich_order == "Ham Roll":
print("Price: $1.75")
elif sandwich_order == "Cheese Roll":
print("Price: $1.80")
elif sandwich_order == "Bacon Roll":
print("Price: $2.10")
else:
print("Price: $2.00")
کد ما نتیجه Price: $2.00
را برمیگرداند.
اول ، برنامه ما ارزیابی می کند که آیا سفارش ساندویچ ما با سایر پرکننده ها برابر نیست. برنامه ما ساندویچی را که سفارش داده ایم با لیست ساندویچ های موجود در منوی ما مقایسه می کند. اگر در منو ساندویچ سفارش داده باشیم این اتفاق می افتد.
اگر ما یک رول پر شده سفارش داده ایم که در منوی ما نیست ، محتویات عبارت else در کد ما اجرا می شود.
در این مثال ، ما یک رول پر شده سفارش داده ایم که در منوی ما نیست. این بدان معناست که دستور if sandwich_order! = Other Filled Roll
به False ارزیابی می شود ، بنابراین کد موجود در دستور if ما اجرا می شود.
حالا فرض کنید ما به جای آن ham roll سفارش دادیم. این باعث می شود که اولین عبارت ما اگر درست ارزیابی شود. این به این دلیل است که Ham Roll برابر سایر پرکنندگان نیست. سفارش ما با لیست قیمت ساندویچ هایی که مشخص کرده ایم مقایسه می شود.
زمان کل دوره
5:47:36
سینا
May 2022پاسخ به نظر
سلام خسته نباشید. اگه بخواهیم خیلی ابتدایی تمرین کنیم ایا سایتی هست . سوال خیلی اسون داشته باشه ؟
و برای اینکه تو این بخش بتونیم مهار تر بشیم باید چه کنیم
با تشکر
تازه بخشو یاد میگیرم
ارسال نظر
امیرحسین بیگدلو
May 2022سلام
متاسفانه اطلاعی ندارم
رسول
November 2021پاسخ به نظر
عالی بود
ارسال نظر
ارسلان
October 2021پاسخ به نظر
04:14
سلام ، ویدیوی if از این دقیقه قطع میشه و بقیه ش لود نمیشه
ارسال نظر
امیرحسین بیگدلو
October 2021سلام
ممنون از شما. مشکل برطرف شد.
نسیم
July 2021پاسخ به نظر
سلام
ببخشید من وقتی بوم رو باز میکنم پشت صفحه ی خودِ پایتون باز میشه مشکلش چیه؟ یه بارم حذفش کردم دوباره نصب کردم بازم درست نشد
ارسال نظر
امیرحسین بیگدلو
July 2021سلام
نمیدونم والا