Tutorial Material

Shart operatorlari

Share to
Python if else shartlari

If sharti

Shartlar (if condition) dastur bajarilishi davomida yuzaga keladigan holatlarni tekshirish va shu holatga qarab qanday amal bajarilishini tanlash uchun ishlatiladi.

Python'da bir nechta shart operatorlari bor: if, else va elif. if sharti shart True bo'lsa kodni bajaradi.

Agar shart False bo'lsa, if bloki bajarilmaydi.

Quyida Python'da if shartidan foydalanish misoli:

# If sharti - shart rost bo'lsa kod bajariladi

ball = 9

# Shart rost bo'lsa, quyidagi buyruq bajariladi
if(ball > 7):
    print("To'qqiz yettidan katta")  # Rost shart, bajariladi

# Shart yolg'on bo'lsa, quyidagi buyruq bajarilmaydi
if(ball > 10):
    print("To'qqiz o'ndan katta")  # Yolg'on shart, bajarilmaydi

Yuqoridagi misolda dastur ishga tushirilsa, birinchi if True bo'lgani uchun "To'qqiz yettidan katta" matni bir marta chiqariladi. Ikkinchi if esa False, shuning uchun u yerdagi print(...) bajarilmaydi.

if else sharti

if else sharti nafaqat shartga mos bo'lsa nima bajarilishini, balki shartga mos bo'lmasa qaysi kod bajarilishini ham belgilaydi.

if else shartida: shart True bo'lsa if ichidagi kod ishlaydi, aks holda (False) else ichidagi kod ishlaydi.

Quyida Python'da if else shartidan foydalanish misoli:

# Shart rost bo'lsa if bloki, yolg'on bo'lsa else bloki bajariladi

ball = 3

if(ball > 7):
    print("Tabriklaymiz, siz o'tdingiz")
else:
    print("Kechirasiz, siz o'tmadingiz")

Yuqoridagi misolda if sharti False bo'lgani uchun dastur "Kechirasiz, siz o'tmadingiz" matnini chiqaradi.

Elif sharti

elif - bu if shartining davomidir. elif orqali bir nechta ehtimoliy holatlardan birini tanlaydigan kod yozish mumkin. else bilan o'xshash, farqi shundaki, elif bir nechta bo'lishi mumkin.

Quyida Python'da elif shartidan foydalanish misoli:

# Elif shartidan foydalanish misoli

bugun = "Yakshanba"

if(bugun == "Dushanba"):
    print("Men darsga boraman")
elif(bugun == "Seshanba"):
    print("Men darsga boraman")
elif(bugun == "Chorshanba"):
    print("Men darsga boraman")
elif(bugun == "Payshanba"):
    print("Men darsga boraman")
elif(bugun == "Juma"):
    print("Men darsga boraman")
elif(bugun == "Shanba"):
    print("Men darsga boraman")
elif(bugun == "Yakshanba"):
    print("Men dam olaman")

Yuqoridagi misolda dastur "Men dam olaman" matnini chiqaradi.

match case (Python 3.10+)

Python 3.10 dan boshlab match-case orqali Structural Pattern Matching mavjud. Bu boshqa tillardagi switch-case ga o'xshaydi va uzun elif zanjirlarini almashtirish uchun qulay.

# Match-case misoli (Python 3.10+)

bugun = "Yakshanba"

match bugun:
    case "Dushanba" | "Seshanba" | "Chorshanba" | "Payshanba" | "Juma":
        print("Men darsga boraman")
    case "Shanba":
        print("Men uy vazifasini qilaman")
    case "Yakshanba":
        print("Men dam olaman")
    case _:
        print("Noto'g'ri kun")

Pattern matching yanada murakkab ma'lumot tuzilmalarini ham moslashtirish (match) uchun ishlatilishi mumkin:

# Ma'lumot tuzilmasini moslashtirish
def buyruq_bajar(buyruq):
    match buyruq.split():
        case ["chiqish"]:
            print("Dasturdan chiqish")
        case ["salom", ism]:
            print(f"Salom, {ism}!")
        case ["qoshish", x, y]:
            print(f"Natija: {int(x) + int(y)}")
        case _:
            print("Noma'lum buyruq")

buyruq_bajar("salom Ali")       # Natija: Salom, Ali!
buyruq_bajar("qoshish 5 3")     # Natija: Natija: 8

Ternary operator (bir qatorli shart)

Python shartni bir qatorga yozish (conditional expression, ternary operator) ni ham qo'llab-quvvatlaydi:

# Ternary operator
yosh = 20
holat = "Katta" if yosh >= 18 else "Bola"
print(holat)  # Natija: Katta

# Yana bir misol
ball = 85
natija = "O'tdi" if ball >= 60 else "Yiqildi"
print(natija)  # Natija: O'tdi