رشن | خدمات میزبانی وب

شرط if تو در تو

بلاک کد زیر را در نظر بگیرید:

ما این جا دو متغیر a و b داریم و دو شرط if و else فقط. خب پس بقیه ifها چطور؟ این‌ها داخل if بالاتر و والد خود هستند.

بگذارید توضیح دهیم.


ابتدا گفتیم اگر a کوچک‌تر از b بود پرینت کن b is greater. خب تا این جا درست، و در خط بعدیش گفتیم که اگر شرط قبلی درست بود حالا بیا یک شرط دیگر را هم چک کن و ببین که آیا مقدار a برابر با 10 هست یا خیر که خب چون هست تابع پرینت دوم را نشان می‌دهد و شرط ادامه پیدا می‌کند. در شرط سوم هم از برنامه می‌پرسیم که آیا a و b با هم مساوی نیستند که خب پاسخ مثبت است چون مساوی نیستند و بنابراین هر سه تا را پرینت می‌کند.

خروجی:

Code
b is greater
a is 10
that's the final condition

حالا اگر یکی از شرط‌ها را طوری تغییر دهیم که صحیح نباشد، چه می‌شود؟ کدها را به این صورت تغییر می‌دهیم الان:

Python
if a < b:
print('b is greater')
if a == 10:
print('a is 10')
if a == b:
print("that's the final condition")

الان خروجی برنامه به این صورت می‌شود:

Code
b is greater
a is 10

چون شرط a == b صحیح نیست بنابراین دیگر خروجی این شرط را نشان نمی‌دهد و شرط‌های بعدی هم اگر توی همین شرط a == b باشند طبیعتا دیگر صحیح نیستند و این بلوک if تمام می‌شود و برنامه سراغ ادامه کد می‌رود اگر چیزی باشد.

نظرات