Python'da shart operatorlari (if, elif, else)
Shu paytgacha dasturlarimiz har doim bir xil ishladi. Haqiqiy dastur esa vaziyatga qarab turli yo’l tutadi: parol to’g’ri bo’lsa — kiritadi, bo’lmasa — rad etadi. Bu qaror qabul qilish shart operatorlari orqali amalga oshiriladi.
if — birinchi shart
if (agar) operatori: bir shart rost bo’lsagina, ma’lum kodni bajaradi.
Ikki narsaga e’tibor bering:
ifqatori ikki nuqta (:) bilan tugaydi.- Shart bajarilganda ishlaydigan kod ichkariga surilgan (chekinish).
Bu chekinish — Python’ning eng o’ziga xos qoidasi.
Chekinish — Python’ning asosiy qoidasi
Ko’p tilda kod bloklari qavs bilan ajratiladi. Python’da esa bo’sh joy
(chekinish, indentation) blokni belgilaydi. if ostidagi surilgan qatorlar
— “shart rost bo’lsa bajariladigan blok”:
Birinchi ikki print surilgan — ular shartga tegishli. Uchinchi print
surilmagan — u shartdan tashqarida, doim ishlaydi.
else — aks holda
else (aks holda) — shart rost bo’lmaganda ishlaydigan blok:
Shart yolg’on bo’lgani uchun if bloki o’tkazib yuborildi, else bloki
ishladi. if bilan else dan faqat bittasi bajariladi.
elif — bir nechta variant
Ikkidan ko’p holat bo’lsa, elif (else if — “aks holda agar”) ishlatiladi.
Python shartlarni yuqoridan pastga tekshiradi va birinchi rost bo’lganini
bajarib, qolganini o’tkazib yuboradi:
ball >= 90 yolg’on, ball >= 70 rost — shu bajarildi, qolgan elif va
else tekshirilmadi ham. elif ni istagancha ko’p yozish mumkin, else
esa ixtiyoriy va faqat oxirda bo’ladi.
Taqqoslash amallari
Shartlar taqqoslash amallariga tayanadi. Ular
bool tipidagi qiymat (True/False)
qaytaradi:
| Amal | Ma’nosi | Misol |
|---|---|---|
== |
teng | a == b |
!= |
teng emas | a != b |
> |
katta | a > b |
< |
kichik | a < b |
>= |
katta yoki teng | a >= b |
<= |
kichik yoki teng | a <= b |
Mantiqiy amallar: and, or, not
Bir nechta shartni birlashtirish uchun and, or, not ishlatiladi:
and— ikkala shart ham rost bo’lsa, rostor— kamida bittasi rost bo’lsa, rostnot— qiymatni teskarisiga o’zgartiradi
or bilan misol:
Ichma-ich shartlar
Shart ichida yana shart bo’lishi mumkin — ular yanada surilib yoziladi:
Ko’pincha ichma-ich shartni and bilan bittaga birlashtirish mumkin va
kod tozaroq bo’ladi — lekin ba’zi hollarda alohida tekshirish aniqroq.
Amaliy mashq
Baho aniqlaydigan dastur yozing:
ballo’zgaruvchisiga 0 dan 100 gacha qiymat bering;if,elifvaelsebilan bahoni aniqlang: 90+ “a’lo”, 70+ “yaxshi”, 50+ “qoniqarli”, qolgani “qoniqarsiz”;- natijani chiqaring;
ballga 90, 70, 50 va 30 qiymatlarini navbatma-navbat berib tekshiring;andyokiorbilan qo’shimcha shart qo’shing — masalan ball 100 dan katta bo’lsa, xato xabarini chiqaring.
Shartlar tartibini teskari qilib ko’ring: nega elif ketma-ketligi muhim?
Qisqacha xulosa
if— shart rost bo’lsagina blokni bajaradi; qatori:bilan tugaydi.- Blok chekinish (4 bo’sh joy) bilan belgilanadi — qavs emas.
else— aks holda;elif— qo’shimcha variantlar. Birinchi rost shart bajariladi, qolgani o’tkaziladi.- Taqqoslash:
==,!=,>,<,>=,<=. Tenglik —==, o’zlashtirish —=. and(ikkalasi),or(kamida bittasi),not(teskari) shartlarni birlashtiradi.
Keyingi darsda takrorlashni o’rganamiz: while sikli — shart rost ekan,
kodni qayta-qayta bajarish.