3 Bob bayonnomalar (statements)

Python dasturlash tilida bayonnomalar (statements) kodning asosiy tuzilishlarini tashkil etadi. Bayonnomalar orqali dastur oqimini boshqarish, ma'lumotlarni qayta ishlash va turli vazifalarni bajarish mumkin. Ushbu bobda biz Pythonda mavjud bo‘lgan asosiy bayonnomalarni o‘rganamiz: mantiqiy elementlar va operatorlar, shart operatorlari, va sikllar (loops). Har bir qismda nazariy ma'lumotlar bilan birgalikda amaliy misollar keltirilgan.

3 - 1 Mantiqiy Elementlari va Operatorlari

Nazariy Ma'lumotlar

Mantiqiy elementlar va operatorlar dasturda shartlarni tekshirish va qarorlar qabul qilishda muhim rol o'ynaydi. Ular yordamida dastur oqimi muayyan shartlarga asoslanib o'zgaradi. Python'da uchta asosiy mantiqiy operator mavjud: and, or, va not. Ushbu operatorlar yordamida murakkab shartlar tuzish va ular asosida qarorlar qabul qilish mumkin.

Mantiqiy Operatorlar:

  1. and Operator: Ikkala shart ham rost bo‘lsa, natija rost (True) bo‘ladi.

  2. or Operator: Kamida bitta shart rost bo‘lsa, natija rost (True) bo‘ladi.

  3. not Operator: Shartning aksi (invertatsiya) ni qaytaradi.

Operatorlar Jadvali:

OperatorMaqsadiMisolNatija

and

Ikkala shart ham rost bo‘lsa True

True and False

False

or

Kamida bitta shart rost bo‘lsa True

True or False

True

not

Shartning aksini (False yoki True)

not True

False

Amaliy Misollar

Misol 1: and Operatoridan Foydalanish

# Mantiqiy o'zgaruvchilar
a = True
b = False

# Ikkala shart ham rost bo'lsa, natija rost bo'ladi
natija = a and b
print(natija)  # Natija: False

Tushuntirish:

  • a va b o‘zgaruvchilari True va False qiymatlarini oladi.

  • a and b operatori faqat a va b ikkalasi ham True bo‘lsa, natijani True qiladi. Aks holda, False qaytaradi.

Misol 2: or Operatoridan Foydalanish

# Mantiqiy o'zgaruvchilar
a = True
b = False

# Kamida bitta shart rost bo'lsa, natija rost bo'ladi
natija = a or b
print(natija)   # Natija: True

Tushuntirish:

  • a yoki b dan kamida bittasi True bo‘lsa, a or b natijasi True bo‘ladi.

Misol 3: not Operatoridan Foydalanish

# Mantiqiy o'zgaruvchi
a = True

# Shartning aksini qaytaradi
natija = not a
print(natija)  # Natija: False

Tushuntirish:

  • not a operatori a ning qiymatini teskariga o‘zgartiradi. Agar a True bo‘lsa, not a False bo‘ladi va aksincha.

Qo‘shimcha Izohlar:

  • and va or Operatorlari: Ushbu operatorlar odatda bir nechta shartlarni birlashtirishda ishlatiladi. Masalan, foydalanuvchi kiritgan ma'lumotlar ma'lum bir diapazonda bo‘lsa va foydalanuvchi maxsus ruxsatnomaga ega bo‘lsa.

    Misol:

    yosh = 25
    tajriba = 3  # Yil
    
    if yosh >= 18 and tajriba >= 2:
        print("Siz arizani ko‘rib chiqish uchun mos.")
    else:
        print("Siz arizani ko‘rib chiqish uchun mos emas.")

    Natija: Siz arizani ko‘rib chiqish uchun mos.

  • not Operatoridan Ko‘proq Foydalanish: not operatori shartlarni aks ettirishda juda foydalidir, masalan, foydalanuvchi kiritgan ma'lumotlarning noto‘g‘ri ekanligini tekshirish.

    Misol:

    parol = "Python123"
    kiritingan_parol = input("Parolni kiriting: ")
    
    if not kiritingan_parol == parol:
        print("Noto'g'ri parol.")
    else:
        print("Xush kelibsiz!")

3 - 2 Pythonda Shart Operatorlari

Nazariy Ma'lumotlar

Shart operatorlari dasturda turli shartlarga qarab turli yo‘nalishlarda ishlash imkonini beradi. Python’da shart operatorlarini if, elif, va else bloklari orqali amalga oshirish mumkin. Bu operatorlar yordamida dastur oqimini dinamik ravishda boshqarish va foydalanuvchi kiritgan ma'lumotlarga mos ravishda qarorlar qabul qilish mumkin.

Shart Operatorlari Bloklari:

  1. if Bloki: Belgilangan shart rost bo‘lsa, bajariladigan kod blokini aniqlaydi.

  2. elif Bloki: Bir nechta shartlarni tekshirish imkonini beradi. Agar oldingi shartlar yolg‘on bo‘lsa, keyingi shartni tekshiradi.

  3. else Bloki: Barcha oldingi shartlar yolg‘on bo‘lsa, bajariladigan kod blokini aniqlaydi.

Sintaksis

if shart1:
    # Shart1 rost bo'lsa bajariladigan kod
elif shart2:
    # Shart1 yolg‘on va shart2 rost bo'lsa bajariladigan kod
else:
    # Shart1 va shart2 yolg‘on bo'lsa bajariladigan kod

Amaliy Misollar

Misol 1: Oddiy If Operatoridan Foydalanish

yosh = 20

if yosh >= 18:
    print("Siz voyaga yetgansiz.")

Tushuntirish:

  • yosh o‘zgaruvchisi 20 ga teng.

  • Agar yosh 18 yoki undan katta bo‘lsa, ekranga "Siz voyaga yetgansiz." matni chiqariladi.

Misol 2: If-Else Operatorlari

yosh = 16

if yosh >= 18:
    print("Siz voyaga yetgansiz.")
else:
    print("Siz yoshingiz yetmagan.")

Tushuntirish:

  • yosh 16 ga teng.

  • Agar yosh 18 yoki undan katta bo‘lsa, "Siz voyaga yetgansiz." chiqadi.

  • Aks holda, "Siz yoshingiz yetmagan." chiqadi.

Misol 3: If-Elif-Else Operatorlari

yosh = 65

if yosh < 18:
    print("Siz yoshingiz yetmagan.")
elif yosh < 60:
    print("Siz faol ishchisaniz.")
else:
    print("Siz pensiya yoshidasiz.")

Tushuntirish:

  • yosh 65 ga teng.

  • Birinchi shart (yosh < 18) yolg‘on bo‘lsa, ikkinchi shart (yosh < 60) tekshiriladi.

  • Har ikki shart ham yolg‘on bo‘lsa, else bloki bajariladi: "Siz pensiya yoshidasiz."

Qo‘shimcha Izohlar:

  • Bir nechta elif Bloklari: Bir nechta shartlarni tekshirish uchun elif bloklari qo‘shilishi mumkin.

    Misol:

    baho = 85
    
    if baho >= 90:
        print("A'lo")
    elif baho >= 80:
        print("Yaxshi")
    elif baho >= 70:
        print("Qoniqarli")
    else:
        print("Kamolotga erishmagan")

    Natija: Yaxshi

  • Shart Operatorlarini Birlashtirish: Mantiqiy operatorlar yordamida bir nechta shartlarni birlashtirish mumkin.

    Misol:

    yosh = 25
    malaka = "Python"
    
    if yosh >= 18 and malaka == "Python":
        print("Siz Python dasturchisi bo‘lishingiz mumkin.")
    else:
        print("Qo‘shimcha malaka kerak.")

3 - 3 Pythonda Sikllar

Nazariy Ma'lumotlar

Sikllar (loops) dasturda biror amalni takrorlash uchun ishlatiladi. Python’da ikki asosiy sikl turi mavjud: while va for sikllari. Sikllar yordamida ma'lum bir vazifani qayta-qayta bajarish, ma'lumotlar to‘plamini aylanib chiqish va ma'lumotlarni avtomatik ravishda qayta ishlash mumkin.

Siklning Asosiy Qoidalari:

  1. Takrorlash sharti: Sikl davomida shartni tekshirish.

  2. Takrorlanadigan amal: Har bir takrorlanishda bajariladigan kod bloki.

  3. To‘xtash sharti: Sikl shartini to‘g‘ri bo‘lmaguncha takrorlanadi.

Qo‘shimcha Izohlar:

  • Infinite (Cheksiz) Sikllar: Agar sikl sharti hech qachon False bo‘lmasa, sikl cheksiz davom etadi. Bunday holatlarni oldini olish uchun sikl ichida shartni o‘zgartirish yoki break operatoridan foydalanish zarur.

  • Siklni To‘xtatish: break operatori yordamida siklni istalgan nuqtada to‘xtatish mumkin.

  • Siklni Keyingi Takrorlashga O‘tish: continue operatori yordamida siklning qolgan qismini o‘tkazib yuborib, keyingi takrorlanishga o‘tish mumkin.

3 - 4 While Sikli

Nazariy Ma'lumotlar

while sikli belgilangan shart rost bo‘lgunga qadar kod blokini takrorlaydi. Ushbu sikl turi shartni dastlab tekshiradi, shuning uchun shart yolg‘on bo‘lsa, sikl ichidagi kod hech qachon bajarilmaydi.

Sintaksis:

while shart:
    # Takrorlanadigan kod

Sikl Qoidalari:

  1. Shartni Tekshirish: Har bir takrorlanishda shartni tekshiradi.

  2. Kod Bloki: Shart rost bo‘lsa, kod bloki bajariladi.

  3. Shartni O‘zgartirish: Sikl ichida shartni o‘zgartirish zarur, aks holda sikl cheksiz davom etadi.

Amaliy Misollar

Misol 1: Oddiy While Siklidan Foydalanish

son = 1

while son <= 5:
    print(son)
    son += 1

Tushuntirish:

  • son o‘zgaruvchisi 1 ga teng.

  • while sharti (son <= 5) rost bo‘lguncha sikl davom etadi.

  • Har bir takrorlanishda son qiymati ekranga chiqariladi va 1 ga oshiriladi.

  • Natija:

    2
    3
    4
    5

Misol 2: Cheksiz While Sikli va Uni To‘xtatish

son = 1

while True:
    print(son)
    son += 1
    if son > 5:
        break  # Siklni to‘xtatish

Tushuntirish:

  • while True sharti har doim True bo‘ladi, shuning uchun sikl cheksiz davom etadi.

  • Har bir takrorlanishda son ekranga chiqariladi va 1 ga oshiriladi.

  • Agar son > 5 bo‘lsa, break operatori yordamida sikl to‘xtatiladi.

  • Natija:

    2
    3
    4
    5

Misol 3: Foydalanuvchidan Ma'lumot Qabul Qilish

javob = ""

while javob.lower() != "exit":
    javob = input("Dasturdan chiqish uchun 'exit' deb yozing: ")
    print(f"Siz yozdingiz: {javob}")

Tushuntirish:

  • javob o‘zgaruvchisi dastlab bo‘sh string ("") ga teng.

  • while sikli javob.lower() != "exit" sharti rost bo‘lgunga qadar davom etadi.

  • Foydalanuvchidan ma'lumot qabul qilish uchun input() funksiyasi ishlatiladi.

  • Har bir kiritilgan ma'lumot ekranga chiqariladi.

  • Foydalanuvchi "exit" deb yozmaguncha sikl davom etadi.

Natija:

Dasturdan chiqish uchun 'exit' deb yozing: Salom
Siz yozdingiz: Salom
Dasturdan chiqish uchun 'exit' deb yozing: python
Siz yozdingiz: python
Dasturdan chiqish uchun 'exit' deb yozing: exit
Siz yozdingiz: exit

Qo‘shimcha Izohlar:

  • Siklni To‘xtatish (break): break operatori siklni istalgan nuqtada to‘xtatish imkonini beradi. Bu, ayniqsa, cheksiz sikllarda muhim rol o'ynaydi.

    Misol:

    pythonCopy codewhile True:
        javob = input("Davom etishni xohlaysizmi? (ha/yo'q): ")
        if javob.lower() == "yo'q":
            break
        print("Davom etamiz!")
  • Siklni Keyingi Takrorlashga O‘tish (continue): continue operatori siklning qolgan qismini o‘tkazib yuborib, keyingi takrorlanishga o‘tish imkonini beradi.

    Misol:

    son = 0
    
    while son < 10:
        son += 1
        if son % 2 == 0:
            continue  # Juft sonlarni chiqarishni o'tkazib yuboradi
        print(son)

    Natija:

    3
    5
    7
    9

3 - 5 For Sikli

Nazariy Ma'lumotlar

for sikli ma'lumotlar to‘plamidagi har bir element bo‘yicha takrorlanadi. U ko‘proq ma'lumotlar to‘plamlarini aylanib chiqishda ishlatiladi. Python’da for sikli iteratsion obyektda (list, tuple, set, dictionary, string, range) mavjud bo‘lgan har bir elementni alohida qayta ishlash uchun qulay vosita hisoblanadi.

Sintaksis:

for element in collection:
    # Takrorlanadigan kod

Siklning Asosiy Qoidalari:

  1. Iteratsion Ob'yekt: collection - bu iteratsion ob'yekt (list, tuple, set, dictionary, string, range).

  2. Elementni Olish: Har bir takrorlanishda, element o‘zgaruvchisiga to‘plamdagi navbatdagi element tayinlanadi.

  3. Kod Bloki: Har bir element uchun kod bloki bajariladi.

Amaliy Misollar

Misol 1: Listdagi Elementlarni Aylanib Chiqish

mevalar = ["olma", "banan", "shaftoli"]

for meva in mevalar:
    print(meva)

Tushuntirish:

  • mevalar nomli list yaratilgan.

  • for meva in mevalar: sikli listdagi har bir elementni meva o‘zgaruvchisiga tayinlaydi va kod blokini bajaradi.

  • Natija:

    olma
    banan
    shaftoli

Misol 2: Range Funksiyasidan Foydalanib Sonlarni Chiqaring

for i in range(1, 6):
    print(i)

Tushuntirish:

  • range(1, 6) 1 dan 5 gacha bo‘lgan sonlar ketma-ketligini yaratadi (6 ning o‘zini qamrab olmaydi).

  • for i in range(1, 6): sikli har bir sonni i o‘zgaruvchisiga tayinlaydi va kod blokini bajaradi.

  • Natija:

    2
    3
    4
    5

Misol 3: Dictionariesda For Sikli

talaba = {
    "ism": "Ali",
    "yosh": 25,
    "fakultet": "Informatika"
}

# Faqat kalitlar bo‘yicha takrorlanish
for kalit in talaba:
    print(kalit)

print("---")

# Faqat qiymatlar bo‘yicha takrorlanish
for qiymat in talaba.values():
    print(qiymat)

print("---")

# Kalit-qiymat juftliklari bo‘yicha takrorlanish
for kalit, qiymat in talaba.items():
    print(f"{kalit}: {qiymat}")

Tushuntirish:

  • talaba nomli dictionary yaratilgan.

  • for kalit in talaba: sikli dictionary'dagi barcha kalitlar bo‘yicha takrorlanadi.

  • for qiymat in talaba.values(): sikli dictionary'dagi barcha qiymatlar bo‘yicha takrorlanadi.

  • for kalit, qiymat in talaba.items(): sikli dictionary'dagi barcha kalit-qiymat juftliklari bo‘yicha takrorlanadi.

  • Natija:

    ism
    yosh
    fakultet
    ---
    Ali
    25
    Informatika
    ---
    ism: Ali
    yosh: 25
    fakultet: Informatika

Qo‘shimcha Izohlar:

  • Nested (Ichki) For Sikllari: for sikllarini ichki sikllar bilan birga ishlatish mumkin, bu esa ko‘p o‘lchovli ma'lumotlar to‘plamlarini qayta ishlashda qulay.

    Misol:

    matrix = [
        [1, 2, 3],
        [4, 5, 6],
        [7, 8, 9]
    ]
    
    for row in matrix:
        for num in row:
            print(num, end=' ')
        print()  # Yangi qatorda davom etish

    Natija:

    Copy code1 2 3 
    4 5 6 
    7 8 9 
  • else Bloki bilan For Sikli: Python'da for sikli oxirida else bloki qo‘shilishi mumkin, u sikl muvaffaqiyatli tugaganida bajariladi. Agar sikl break operatori bilan to‘xtatilgan bo‘lsa, else bloki bajarilmaydi.

    Misol:

    mevalar = ["olma", "banan", "shaftoli", "anor"]
    
    for meva in mevalar:
        if meva == "banan":
            print("Banan topildi!")
            break
    else:
        print("Banan topilmadi.")

    Natija:

    Banan topildi!

    Agar listda "banan" yo‘q bo‘lsa:

    mevalar = ["olma", "shaftoli", "anor"]
    
    for meva in mevalar:
        if meva == "banan":
            print("Banan topildi!")
            break
    else:
        print("Banan topilmadi.")

    Natija:

    Banan topilmadi.

Last updated