Python match
matchoperatori har xil shartlarga asoslangan turli harakatlarni bajarish uchun ishlatiladi.
Python moslik operatori
Ko‘p if..else operatorlarini yozish o‘rniga,matchoperatoridan foydalanishingiz mumkin.
matchoperatori bajariladigan ko‘plab kod bloklaridan birini tanlaydi.
Sintaksis
match expression:
case x:
code block
case y:
code block
case z:
code block
Bu shunday ishlaydi:
matchifodasi bir marta baholanadi.- Ifodaning qiymati har bircaseqiymatlari bilan taqqoslanadi.
- Agar mos keladigan bo‘lsa, tegishli kod bloki bajariladi.
Quyidagi misolda ish kuni nomini chop etish uchun ish kuni raqami ishlatiladi:
Misol
day = 4
match day:
case 1:
print("Monday")
case 2:
print("Tuesday")
case 3:
print("Wednesday")
case 4:
print("Thursday")
case 5:
print("Friday")
case 6:
print("Saturday")
case 7:
print("Sunday")
O‘zingiz sinab ko‘ring »
Standart qiymat
Agar kod bloki boshqa mos kelmaydigan hollarda bajarilishini istasangiz, oxirgi harf qiymati sifatida _ pastki chiziq belgisidan foydalaning:
Misol
day = 4
match day:
case 6:
print("Today is Saturday")
case 7:
print("Today is Sunday")
case _:
print("Looking forward to the Weekend")
O‘zingiz sinab ko‘ring »
_ qiymati har doim mos keladi, shuning uchun uni sukut bo‘yicha ish qilish uchun oxirgi holat sifatida joylashtirish muhimdir.
Qiymatlarni birlashtirish
pipeline belgisidan foydalaning | bir holatda bir nechta qiymat mosligini tekshirish uchun vaziyatni baholashda operator yoki operator sifatida:
Misol
day = 4
match day:
case 1 | 2 | 3 | 4 | 5:
print("Today is a weekday")
case 6 | 7:
print("I love weekends!")
O‘zingiz sinab ko‘ring »
Agar soqchilar sifatida ko‘rsatmalar
ifiboralarini qo‘shimcha shart tekshiruvi sifatida ishni baholashga qo‘shishingiz mumkin:
Misol
month = 5
day = 4
match day:
case 1 | 2 | 3 | 4 | 5 if month == 4:
print("A weekday in April")
case 1 | 2 | 3 | 4 | 5 if month == 5:
print("A weekday in May")
case _:
print("No match")
O‘zingiz sinab ko‘ring »
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
