match
Python match kalit so‘zi
❮ Python kalit so‘zlari ma’lumotnomasi
Misol
Qiymatni andozalar bilan solishtiruvchi oddiy match:
role = "editor"
match role:
case "admin":
print("Full access")
case "editor":
print("Edit content")
case "viewer":
print("Read-only")
O‘zingiz sinab ko‘ring »
Ta’rif va qo‘llanilishi
match kalit so‘zi Python 3.10 da joriy etilgan strukturaviy andozaga moslashtirish (structural pattern matching) operatorini boshlaydi.
U tekshirilayotgan qiymatni (subject) bir yoki bir nechta case andozalari bilan solishtiradi va birinchi mos kelgan case blokini bajaradi.
Quyidagilardan foydalanishingiz mumkin:
- Literal andozalar (sonlar, stringlar)
|bilan yoziladigan OR-andozalar- Istalgan qiymatga mos keladigan
_wildcard belgisi (standart case) - Qo‘shimcha shartlar uchun
ifbilan yoziladigan guard’lar - Ketma-ketlik, mapping va sinf andozalari (ilg‘or daraja)
Ko‘proq misollar
Misol
| yordamida bir nechta qiymatni bitta case’ga guruhlang:
status = 404
match status:
case 400 | 404:
print("Client Error")
case 200:
print("OK")
case 500:
print("Server Error")
O‘zingiz sinab ko‘ring »
Misol
Qolgan barcha holatlarni ushlash uchun _ bilan standart case’dan foydalaning:
status = 201
match status:
case 200:
print("OK")
case 201:
print("Created")
case _:
print("Other")
O‘zingiz sinab ko‘ring »
Misol
Bir nechta string qiymatni moslashtiring va standart case’dan foydalaning:
cmd = "quit"
match cmd:
case "start":
print("Starting...")
case "stop":
print("Stopping...")
case _:
print("Unknown command")
O‘zingiz sinab ko‘ring »
Misol
Moslashtirishni aniqlashtirish uchun | (OR) va guard shartidan foydalaning:
n = 10
match n:
case 0 | 1:
print("Small")
case x if x % 2 == 0:
print("Even number:", x)
case _:
print("Odd number:", n)
O‘zingiz sinab ko‘ring »
Tegishli sahifalar
case kalit so‘zi.
Andozaga moslashtirish haqida ko‘proq ma’lumotni Python match darsligimizda o‘qing.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
