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

شرط if تو در تو

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

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

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


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

خروجی:

Code
  1. b is greater
  2. a is 10
  3. that's the final condition

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

Python
  1. if a < b:
  2. print('b is greater')
  3. if a == 10:
  4. print('a is 10')
  5. if a == b:
  6. print("that's the final condition")

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

Code
  1. b is greater
  2. a is 10

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