Python - Agar ... Aks Holda
Python Shartlari va Agar Iboralari
Python matematikadagi odatiy mantiqiy shartlarni qo'llab-quvvatlaydi:
- Teng:
a == b - Teng emas:
a != b - Kichik:
a < b - Kichik yoki teng:
a <= b - Katta:
a > b - Katta yoki teng:
a >= b
Bu shartlar bir nechta usulda ishlatilishi mumkin, eng keng tarqalgani agar iboralari va tsikllarda.
Agar iborasi if kalit so'zi yordamida yoziladi.
Misol
Agar iborasi:
a = 33
b = 200
if b > a:
print("b a dan katta")Bu misolda biz ikkita o'zgaruvchi, a va b ni ishlatamiz, ular if iborasining bir qismi sifatida b a dan katta yoki yo'qligini tekshirish uchun ishlatiladi. a 33 ga teng, b esa 200 ga teng, shuning uchun biz 200 33 dan katta ekanligini bilamiz va shu sababli ekranga "b a dan katta" deb chop etamiz.
Joy Tashlash (Indentation)
Python kodning doirasini aniqlash uchun joy tashlash (satr boshidagi bo'sh joy) ga tayanadi. Boshqa dasturlash tillari ko'pincha bu maqsadda figurali qavslardan foydalanadi.
Misol
Joy tashlashsiz agar iborasi (xatolik keltirib chiqaradi):
a = 33
b = 200
if b > a:
print("b a dan katta") # siz xatolik olasizElif
elif kalit so'zi Python'da "agar oldingi shartlar to'g'ri bo'lmasa, bu shartni sinab ko'r" degan ma'noni anglatadi.
Misol
a = 33
b = 33
if b > a:
print("b a dan katta")
elif a == b:
print("a va b teng")Bu misolda a b ga teng, shuning uchun birinchi shart to'g'ri emas, lekin elif sharti to'g'ri, shuning uchun ekranga "a va b teng" deb chop etamiz.
Else
else kalit so'zi oldingi shartlar tomonidan qamrab olinmagan hamma narsani ushlaydi.
Misol
a = 200
b = 33
if b > a:
print("b a dan katta")
elif a == b:
print("a va b teng")
else:
print("a b dan katta")Bu misolda a b dan katta, shuning uchun birinchi shart to'g'ri emas, elif sharti ham to'g'ri emas, shuning uchun else shartiga o'tamiz va ekranga "a b dan katta" deb chop etamiz.
elif siz else ni ham ishlatishingiz mumkin:
Misol
a = 200
b = 33
if b > a:
print("b a dan katta")
else:
print("b a dan katta emas")Qisqa Agar
Agar sizda faqat bitta iborani bajarish kerak bo'lsa, uni if iborasi bilan bir qatorda qo'yishingiz mumkin.
Misol
Bir qatorlik agar iborasi:
if a > b: print("a b dan katta")Qisqa Agar ... Aks Holda
Agar sizda if uchun bitta va else uchun bitta ibora bo'lsa, hammasini bir qatorda yozishingiz mumkin:
Misol
Bir qatorlik agar-aks holda iborasi:
a = 2
b = 330
print("A") if a > b else print("B")Bu texnika Ternar Operatorlar yoki Shartli Ifodalar deb ataladi.
Bir qatorda bir nechta else iboralarini ham ishlatishingiz mumkin:
Misol
Uch shartli bir qatorlik agar-aks holda iborasi:
a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")Va (And)
and kalit so'zi mantiqiy operator bo'lib, shartli iboralarni birlashtirish uchun ishlatiladi:
Misol
a b dan katta va c a dan katta ekanligini tekshirish:
a = 200
b = 33
c = 500
if a > b and c > a:
print("Ikkala shart ham to'g'ri")Yoki (Or)
or kalit so'zi mantiqiy operator bo'lib, shartli iboralarni birlashtirish uchun ishlatiladi:
Misol
a b dan katta yoki a c dan katta ekanligini tekshirish:
a = 200
b = 33
c = 500
if a > b or a > c:
print("Shartlardan kamida bittasi to'g'ri")Emas (Not)
not kalit so'zi mantiqiy operator bo'lib, shartli iboraning natijasini teskari qilish uchun ishlatiladi:
Misol
a b dan katta emasligini tekshirish:
a = 33
b = 200
if not a > b:
print("a b dan katta emas")Ichki Agar
Siz if iboralari ichida if iboralarini ishlatishingiz mumkin, bunga ichki agar iboralari deyiladi.
Misol
x = 41
if x > 10:
print("O'ndan yuqori,")
if x > 20:
print("va shuningdek 20 dan yuqori!")
else:
print("lekin 20 dan yuqori emas.")Pass Ibora
if iboralari bo'sh bo'la olmaydi, lekin agar biron sababga ko'ra ichida hech narsa bo'lmagan if iborangiz bo'lsa, xatolikni oldini olish uchun pass iborasini qo'ying.
Misol
a = 33
b = 200
if b > a:
pass