در حال بارگذاری...

چند حالت با match

۹ نه ۱ است و نه ۲. برای همین case 1 و case 2 اجرا نمی‌شوند. case _ یعنی هر چه ماند. print("none") اجرا می‌شود و کار همان‌جا تمام است. tea و water را در این اجرا نمی‌بینی.

نه فنجان، خط بقیه

python
cups = 9
match cups:
    case 1:
        print("water")
    case 2:
        print("tea")
    case _:
        print("none")

روی صفحه none می‌آید.

۲ فقط case خودش را راه می‌اندازد

cups = 2. match از بالا نگاه می‌کند. case 1 عدد ۱ را می‌خواهد، پس رد می‌شود. case 2 عدد ۲ است، پس print("tea") اجرا می‌شود. به _ نمی‌رسد. از چند حالت، فقط همان یکی که اول جور شد.

دو فنجان، خط tea

python
cups = 2
match cups:
    case 1:
        print("water")
    case 2:
        print("tea")
    case _:
        print("none")

روی صفحه tea می‌آید.

۱ همان حالت اول است

cups = 1 به case 1 می‌خورد. print("water") اجرا می‌شود. case 2 و _ نوبت نمی‌گیرند. حالت بعدی، بعد از جور شدن یکی، خاموش می‌ماند.

یک فنجان، خط water

python
cups = 1
match cups:
    case 1:
        print("water")
    case 2:
        print("tea")
    case _:
        print("none")

روی صفحه water می‌آید.

صفحهٔ قبل دو راه داشت، if و else. اینجا هر مقدار case جدا دارد. یک اجرا یک case را انتخاب می‌کند.

بعد از match و بعد از هر case دونقطه می‌آید. خط case چهار فاصله داخل match است. خط print چهار فاصله داخل case است. match و case با حرف کوچک‌اند. Match با M بزرگ برنامه را متوقف می‌کند.

جای _ آخر است. این خط با هر مقداری جور می‌شود. اگر آن را قبل از case 2 بنویسی، برنامه پیش از اجرا می‌ایستد. case بعدی هیچ‌وقت نوبت نمی‌گیرد، و Python کل match را رد می‌کند. _ خط بقیه است، نه خط اول.

صفحهٔ بعد خط‌ها را تکرار می‌کند

این صفحه یک case را یک بار اجرا می‌کند. صفحهٔ بعد حلقهٔ for است. همان خط‌ها را تکرار می‌کند.

این چهار تا را خودت بگو

  1. cups برابر ۹ چه می‌نویسد؟ none. tea و water در آن اجرا نمی‌آیند.
  2. cups برابر ۲، وقتی case 2 پیش از _ است، چه می‌نویسد؟ tea.
  3. cups برابر ۱ چه می‌نویسد؟ water.
  4. _ کجا می‌آید؟ آخر. اگر قبل از case اسم‌دار باشد برنامه می‌ایستد. صفحهٔ بعد حلقهٔ for است.

این‌طور خواندنش غلط است

  • انتظار tea و none در یک اجرا
  • گذاشتن case _ پیش از case 2
  • جا گذاشتن دونقطه بعد از match یا case
  • نوشتن Match یا Case با حرف بزرگ
  • خواندن match به‌جای همان دو راه if و else

جمع کن

۹ می‌نویسد none. ۲ می‌نویسد tea. ۱ می‌نویسد water.
فقط همان case که اول جور شد اجرا می‌شود.
_ خط بقیه است و آخر می‌آید. زودتر از آن، برنامه می‌ایستد.
صفحهٔ بعد حلقهٔ for است.

🧠 دانش خود را بیازمایید

آماده شروع

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

خود را با این آزمون تعاملی به چالش بکشید و ببینید موضوع را چقدر خوب درک کرده‌اید

❓
4
سوالات
🎯
70%
برای قبولی
♾️
∞
زمان
🔄
∞
تلاش‌ها

📝 دستورالعمل‌ها

  • هر سوال را با دقت بخوانید
  • بهترین پاسخ را برای هر سوال انتخاب کنید
  • می‌توانید آزمون را هر چند بار که می‌خواهید تکرار کنید
  • پیشرفت شما در بالا نمایش داده می‌شود