3-bo‘lim

Sintaksis asoslari

Python kodining yozilish qoidalari: bo'sh joy (indentatsiya), izohlar, satrlarni bo'lish, print() va input() funksiyalari.

🕑 13 daqiqa o‘qish 📄 536 so‘z 👁 6 marta ko‘rilgan
Ushbu bo‘lim mundarijasi
  1. Indentatsiya - Python'ning asosiy qoidasi
  2. Indentatsiya qoidalari
  3. Izohlar
  4. print() - ekranga chiqarish
  5. sep va end parametrlari
  6. Maxsus belgilar
  7. input() - foydalanuvchidan ma'lumot olish
  8. Satrlarni bo'lish va birlashtirish
  9. Nomlar berish qoidalari
  10. To'liq misol
  11. Xulosa

Har bir tilning o'z grammatikasi bor. Python grammatikasi juda qisqa, lekin bitta qat'iy qoidaga ega bo'lib, u boshqa tillarda uchramaydi: bo'sh joy ahamiyatli.

Indentatsiya - Python'ning asosiy qoidasi #

Ko'pchilik tillarda kod bloklari { va } qavslar bilan ajratiladi. Python'da esa chekinish (indentatsiya) shu vazifani bajaradi.

Python
yosh = 20

if yosh >= 18:
    print("Siz voyaga yetgansiz")      # bu satr if ichida
    print("Ovoz berishingiz mumkin")   # bu ham if ichida
print("Dastur tugadi")                 # bu esa if dan tashqarida
Natija
Siz voyaga yetgansiz
Ovoz berishingiz mumkin
Dastur tugadi

Diqqat qiling: birinchi ikkita print 4 ta bo'shliq bilan surilgan, uchinchisi esa yo'q. Aynan shu surish Python'ga qaysi kod shart ichida ekanini aytadi.

Eng ko'p uchraydigan xato
Python
if yosh >= 18:
print("Salom")
Natija
IndentationError: expected an indented block after 'if' statement on line 1

Ikki nuqtadan (:) keyingi satr majburiy ravishda surilgan bo'lishi kerak.

Indentatsiya qoidalari #

QoidaIzoh
4 ta bo'shliqRasmiy tavsiya (PEP 8)
Bir xil bo'lsinBitta blokda 4, boshqasida 2 bo'lmasin
Tab aralashmasinTab va bo'shliqni aralashtirish - TabError
: dan keyinHar doim yangi blok boshlanadi
if shart_1: amal_1() ← 1-daraja (4 bo'shliq) if shart_2: amal_2() ← 2-daraja (8 bo'shliq) amal_3() ← 0-daraja (asosiy kod)
Har bir chekinish darajasi yangi blokni bildiradi

Izohlar #

Izoh - bu Python e'tiborsiz qoldiradigan matn. U kod nima uchun yozilganini tushuntirish uchun kerak.

Python
# Bu bir satrlik izoh

narx = 15000        # Izohni satr oxiriga ham qo'yish mumkin

"""
Bu ko'p satrli izoh.
Odatda funksiya yoki fayl nima qilishini tushuntirish uchun ishlatiladi.
"""

def soliqni_hisobla(summa):
    """Berilgan summadan 12% QQS ni hisoblab qaytaradi."""
    return summa * 0.12
Yaxshi izoh qanday bo'ladi?

Yomon izoh nima qilinayotganini takrorlaydi, yaxshi izoh nima uchun qilinayotganini tushuntiradi.

Python
# Yomon: narxni 1.12 ga ko'paytiramiz
yakuniy_narx = narx * 1.12

# Yaxshi: 12% QQS qo'shamiz (2026-yil tarifi)
yakuniy_narx = narx * 1.12

print() - eng ko'p ishlatadigan funksiyangiz.

Python
print("Salom")                      # oddiy matn
print("Salom", "dunyo")             # bir nechta qiymat, orasida bo'shliq
print("Yosh:", 25)                  # matn va son birga
print()                             # bo'sh satr
Natija
Salom
Salom dunyo
Yosh: 25

sep va end parametrlari #

Python
# sep - qiymatlar orasidagi ajratuvchi
print("2026", "01", "15", sep="-")

# end - satr oxiriga qo'shiladigan belgi (sukut bo'yicha "\n")
print("Yuklanmoqda", end="")
print("...", end="")
print(" tayyor!")
Natija
2026-01-15
Yuklanmoqda... tayyor!

Maxsus belgilar #

BelgiMa'nosiMisol
\nYangi satrprint("A\nB")
\tTabulyatsiyaprint("A\tB")
\Teskari chiziqprint("C:\papka")
\"Qo'shtirnoqprint("U \"salom\" dedi")
Python
print("Ism:\tHusanboy")
print("Yosh:\t25")
print("Manzil:\tC:\\Users\\Husanboy")
Natija
Ism:    Husanboy
Yosh:    25
Manzil:    C:\Users\Husanboy

input() - foydalanuvchidan ma'lumot olish #

Python
ism = input("Ismingizni kiriting: ")
print("Salom, " + ism + "!")
Natija
Ismingizni kiriting: Sardor
Salom, Sardor!
input() har doim matn qaytaradi

Bu eng ko'p adashtiradigan joylardan biri:

Python
yosh = input("Yoshingiz: ")
print(yosh + 5)     # XATO!
Natija
TypeError: can only concatenate str (not "int") to str

Sonni olish uchun turni o'zgartirish kerak:

Python
yosh = int(input("Yoshingiz: "))
print("Kelasi yili:", yosh + 1)

Satrlarni bo'lish va birlashtirish #

Uzun satrni bir nechta qatorga bo'lish mumkin:

Python
# Teskari chiziq bilan
umumiy_summa = 15000 + 24000 + \
               31000 + 12000

# Qavslar bilan (tavsiya etiladi)
umumiy_summa = (15000 + 24000 +
                31000 + 12000)

# Ro'yxat, lug'at va funksiya qavslari ichida avtomatik ishlaydi
shaharlar = [
    "Toshkent",
    "Samarqand",
    "Buxoro",
]

Bitta satrda bir nechta buyruq yozish ham mumkin, lekin bu tavsiya etilmaydi:

Python
a = 1; b = 2; print(a + b)      # ishlaydi, lekin o'qish qiyin

Nomlar berish qoidalari #

O'zgaruvchi, funksiya va klass nomlariga qat'iy qoidalar bor:

QoidaTo'g'riNoto'g'ri
Harf yoki _ bilan boshlanadiism, _vaqt2yosh
Bo'shliqsiztalaba_nomitalaba nomi
Registrga sezgirIsmism-
Kalit so'z bo'lmasinsinf_nomiclass

Python'ning 35 ta kalit so'zi bor va ular nom sifatida ishlatilmaydi:

Python
import keyword
print(keyword.kwlist)
Natija
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break',
 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally',
 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal',
 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
Nomlash uslubi (PEP 8)
NimaUslubMisol
O'zgaruvchi va funksiyasnake_casetalaba_yoshi, bahoni_hisobla()
KlassPascalCaseTalabaMalumoti
O'zgarmas (konstanta)UPPER_CASEMAX_TALABA = 30

Biz butun darslik davomida o'zbekcha nomlar ishlatamiz: narx, jami_summa, foizni_hisobla(). Bu kodning mantiqini tezroq tushunishga yordam beradi.

To'liq misol #

Python
# ============================================
# Oddiy tanishuv dasturi
# ============================================

print("=" * 40)
print("TANISHUV DASTURI")
print("=" * 40)

ism = input("Ismingiz: ")
yosh = int(input("Yoshingiz: "))
shahar = input("Shahringiz: ")

print()
print("Ma'lumotlaringiz:")
print("\tIsm:\t", ism)
print("\tYosh:\t", yosh)
print("\tShahar:\t", shahar)

tugilgan_yil = 2026 - yosh
print("\nSiz taxminan", tugilgan_yil, "yilda tug'ilgansiz.")
Natija
========================================
TANISHUV DASTURI
========================================
Ismingiz: Husanboy
Yoshingiz: 25
Shahringiz: Namangan

Ma'lumotlaringiz:
    Ism:     Husanboy
    Yosh:     25
    Shahar:     Namangan

Siz taxminan 2004 yilda tug'ilgansiz.
Amaliy topshiriq

kalkulyator.py faylini yarating:

  1. Foydalanuvchidan ikkita son so'rang (int(input(...)) orqali).
  2. Ularning yig'indisi, ayirmasi, ko'paytmasi va bo'linmasini chiqaring.
  3. Natijalarni \t bilan chiroyli tekislang.
  4. Har bir bo'lim ustiga izoh yozing.

Xulosa #

  • Python'da indentatsiya - sintaksisning bir qismi, 4 ta bo'shliq standart.
  • Izohlar # bilan, ko'p satrli izohlar """...""" bilan yoziladi.
  • print() da sep va end parametrlari chiqishni boshqaradi.
  • input() har doim matn qaytaradi - son kerak bo'lsa int() yoki float() ishlating.
  • Nomlar harf yoki _ bilan boshlanadi, kalit so'z bo'lolmaydi.

Keyingi bo'limda o'zgaruvchilar va ma'lumot turlarini chuqurroq o'rganamiz.

Xatolik topdingizmi?

Imlo xatosi, ishlamaydigan kod yoki noto‘g‘ri ma‘lumotni ko‘rsangiz - bizga xabar bering. Har bir xabar administrator tomonidan ko‘rib chiqiladi.