P Y T H O N Asoslari: dars 2.
Reja: Data Types · List · Dict · Funksiya
ML kursi

P Y T H O N Asoslari: dars 2.
Reja: Data Types · List · Dict · Funksiya
Ma’lumot turlari (Data Types) Python’da har bir qiymat ma’lum bir turga ega.Keling eng asosiy 4 ta sini ko’rib chiqamiz:
int — Butun son
x = 10
float — Kasr
son x = 3.14
str — Matn
x = "Salom"
bool — Mantiqiy
x = True
1️⃣ INT — Butun sonlar
x = 10
y = -5
z = 0
# Amallar
print(10 + 3) # 13
print(10 - 3) # 7
print(10 * 3) # 30
print(10 / 3) # 3.333... ← bu float qaytaradi!
print(10 // 3) # 3 ← butun bo'lish (qoldiqsiz)
print(10 % 3) # 1 ← qoldiq (juft/toq tekshirishda ishlatiladi)
print(10 ** 3) # 1000 ← daraja (10 ning 3-darajasi)
Ko’p ishlatiladi:
# Juft/toq tekshirish
son = 7
if son % 2 == 0:
print("Juft")
else:
print("Toq")
⚠️ Istisnolar:
# / har doim float qaytaradi
print(10 / 2) # 5.0 ← 5 emas!
print(type(10/2)) # float
# Nolga bo'lish — xato!
print(10 / 0) # ZeroDivisionError ← dastur to'xtaydi
2️⃣ FLOAT — Kasr sonlar
x = 3.14
y = -0.5
z = 2.0 # butun ko'rinsa ham float
# Foydali funksiyalar
print(round(3.14159, 2)) # 3.14 ← 2 xonagacha yaxlitlash
print(round(3.7)) # 4 ← butun songa yaxlitlash
print(abs(-5.5)) # 5.5 ← mutlaq qiymat (manfiyni musbatga)
⚠️ Istisnolar:
# Float aniq emas! (kompyuter kasrlarni to'liq saqlay olmaydi)
print(0.1 + 0.2) # 0.30000000000000004 ← 0.3 emas!
# Yechim — round() ishlat
print(round(0.1 + 0.2, 2)) # 0.3
3️⃣ STR — Matn (String)
ism = "Ali"
gap = 'Salom dunyo' # ' yoki " — ikkalasi ham ishlaydi
uzun = """Bu
ko'p qatorli
matn"""
Eng ko’p ishlatiladigan metodlar:
matn = " Salom Dunyo "
matn.lower() # " salom dunyo " ← hammasi kichik
matn.upper() # " SALOM DUNYO " ← hammasi katta
matn.strip() # "Salom Dunyo" ← bosh/oxirdagi bo'sh joy o'chadi
matn.replace("Salom", "Xayr") # " Xayr Dunyo "
matn.split() # ["Salom", "Dunyo"] ← so'zlarga bo'ladi
len(matn) # 15 ← uzunlik (bo'shliqlar bilan)
# Tekshirish metodlari
"ali123".isdigit() # False ← faqat raqammi?
"123".isdigit() # True
"Ali".isalpha() # True ← faqat harfmi?
"ali".startswith("a") # True
"ali".endswith("i") # True
"Salom" in matn # True ← ichida bormi?
String birlashtirish:
ism = "Ali"
yosh = 20
# 3 usul — hammasi ishlaydi
print("Salom " + ism) # + bilan (faqat str + str)
print("Salom", ism, "yosh:", yosh) # vergul bilan
print(f"Salom {ism}, yosh: {yosh}") # f-string ← ENG QULAY usul
⚠️ Istisnolar:
# str + int bo'lmaydi!
print("Yosh: " + 20) # TypeError!
# Yechim — str() ga o'tkazish
print("Yosh: " + str(20)) # "Yosh: 20"
# Indeks — 0 dan boshlanadi
matn = "Salom"
print(matn[0]) # S
print(matn[-1]) # m ← oxirgi element
print(matn[1:3]) # al ← kesib olish (slice)
4️⃣ BOOL — Mantiqiy qiymat
rost = True
yolg = False
# Taqqoslash natijalari bool qaytaradi
print(5 > 3) # True
print(5 == 3) # False
print(5 != 3) # True
Mantiqiy operatorlar:
# and — ikkalasi ham True bo'lsa True
print(True and True) # True
print(True and False) # False
# or — bittasi True bo'lsa True
print(True or False) # True
print(False or False) # False
# not — teskarisiga o'giradi
print(not True) # False
print(not False) # True
⚠️ Istisnolar — nima False hisoblanadi:
# Bular hammasi False:
bool(0) # False ← nol
bool("") # False ← bo'sh string
bool([]) # False ← bo'sh list
bool({}) # False ← bo'sh dict
bool(None) # False ← None
# Qolganlari True:
bool(1) # True
bool("a") # True
bool([1,2]) # True
Undan tashqari shu linkni ustiga bosangiz python asoslarini vd darslik orqali ham o’rganishingiz mumkin.
List (Ro’yxat)
List — tartibli va o’zgaruvchan elementlar to’plami. Indeks 0 dan boshlanadi
# Yaratish
mevalar = ["olma", "banan", "gilos"]
raqamlar = [1, 2, 3, 4, 5]
aralash = [1, "salom", True, 3.14] # har xil turlar bo'lishi mumkin
# Indeks — 0 dan boshlanadi
print(mevalar[0]) # olma
print(mevalar[-1]) # gilos ← oxirgi element
print(mevalar[1:3]) # ["banan", "gilos"] ← kesib olish
Asosiy metodlar:
lst = [3, 1, 4, 1, 5]
lst.append(9) # [3,1,4,1,5,9] ← oxiriga qo'shish
lst.insert(0, 99) # [99,3,1,4,1,5,9] ← indeksga qo'shish
lst.remove(1) # birinchi 1 ni o'chiradi
lst.pop() # oxirgisini o'chirib qaytaradi
lst.pop(0) # 0-indeksni o'chirib qaytaradi
lst.sort() # kichikdan kattaga tartiblash (o'zini o'zgartiradi)
lst.reverse() # teskari qiladi
lst.count(1) # 1 nechta borligini hisoblaydi
lst.index(4) # 4 ning indeksini qaytaradi
lst.clear() # hammasini o'chiradi
len(lst) # uzunlik
sum(lst) # yig'indi
max(lst) # eng katta
min(lst) # eng kichik
sorted(lst) # yangi tartiblangan list qaytaradi (o'zini o'zgartirmaydi)
Dictionary (Dict)
Dict — kalit (key) va qiymat (value) juftliklari to’plami. Kalit orqali qiymatga murojaat qilinadi.
# Yaratish
talaba = {
"ism": "Ali",
"yosh": 20,
"ballar": [85, 90, 78] # dict ichida list bo'lishi mumkin!
}
# Olish
print(talaba["ism"]) # Ali
print(talaba["ballar"][0]) # 85 ← list ichidan olish
# Qo'shish / o'zgartirish
talaba["shahar"] = "Toshkent" # yangi kalit
talaba["yosh"] = 21 # mavjudini o'zgartirish
⚠️ Istisnolar:
d = {"a": 1}
d["z"] # KeyError — "z" kaliti yo'q!
# Yechim 1 — get() ishlat
d.get("z", 0) # 0 qaytaradi, xato bermaydi
# Yechim 2 — avval tekshir
if "z" in d:
print(d["z"])
Funksiya (Function)
Funksiya — muayyan vazifani bajaruvchi, qayta ishlatiladigan kod bloki. def bilan e’lon qilinadi
# Oddiy funksiya
def salomlash(ism):
print(f"Salom, {ism}!")
salomlash("Ali") # Salom, Ali!
# Return bilan
def yigindi(a, b):
return a + b
natija = yigindi(3, 5)
print(natija) # 8
# Default parametr
def salomlash(ism, til="UZ"):
if til == "UZ":
print(f"Salom, {ism}!")
else:
print(f"Hello, {ism}!")
salomlash("Ali") # Salom, Ali!
salomlash("Ali", "EN") # Hello, Ali!
# Ko'p qiymat qaytarish
def min_max(lst):
return min(lst), max(lst)
kichik, katta = min_max([3, 1, 4, 1, 5])
print(kichik, katta) # 1 5
⚠️ Istisnolar:
# return yo'q funksiya None qaytaradi
def test(x):
x * 2 # return yo'q!
print(test(5)) # None ← 10 emas!
# O'zgaruvchi scope — funksiya ichidagi tashqarida ko'rinmaydi
def hisob():
ichki = 100
print(ichki) # NameError — ichki tashqarida yo'q!
TEST — 15 ta savol (ichida new dictionary ham bo’lishi mumkin)
# 1. Natija nima?
lst = [1, 2, 3]
lst.append([4, 5])
print(len(lst))
# 2. Natija nima?
print([1,2,3][-1])
# 3. Xato bormi?
d = {"a": 1}
print(d["b"])
# 4. Natija nima?
d = {"a": 1}
print(d.get("b", 99))
# 5. Natija nima?
def f(x):
x * 2
print(f(5))
# 6. Natija nima?
for i in range(2, 8, 2):
print(i)
# 7. Natija nima?
jami = 0
for i in range(1, 5):
jami += i
print(jami)
# 8. Natija nima?
lst = [1,2,3,4,5]
for x in lst:
if x == 3:
break
print(x)
# 9. Natija nima?
lst = [1,2,3,4,5]
for x in lst:
if x == 3:
continue
print(x)
# 10. Natija nima?
a, b = min_max([4, 1, 7, 2]) # yuqoridagi min_max funksiya
print(a, b)
# 11. Natija nima?
print("salom".upper())
# 12. Natija nima?
lst = [3, 1, 2]
lst.sort()
print(lst)
# 13. Xato bormi?
print("yosh: " + 25)
# 14. Natija nima?
d = {"a":1, "b":2}
d.update({"c": 3})
print(len(d))
# 15. Natija nima?
son = 1
while son < 4:
print(son)
son += 1
Uyga vazifa va qo’shimcha manbalar
1 10 ta mahsulot nomini list'ga, narxlarini dict'ga joylang
2 Ikki sonning ko'paytmasini hisoblovchi funksiya yozing
3 Foydalanuvchidan ism so'rab, salomlashuvchi funksiya tuzing
4 3 do'stingiz ism va telefonini dict'ga saqlang, biriga murojaat qiling
5 Uchburchak perimetrini hisoblovchi funksiya (a, b, c)
Qo’shimcha manbalar:
docs.python.org ← rasmiy hujjatlar
w3schools.com/python ←interaktiv mashqlar
pythontutor.com ←kodni qadamba-qadam vizual
hackerrank.com/python ←amaliy masalalar
Dars xulosasi (Recap)
Ma’lumot turlari — int, float, str, bool — har biri turli ma’lumot
List — Tartibli ro’yxat; append, remove, len
Dictionary — Kalit-qiymat; dict[key] orqali murojaat
Funksiya — def bilan e’lon; parametr va return
08.08.2026
메타데이터
- post_id
- 97c68bb394aa
- slug
- p-y-t-h-o-n-asoslari-dars-2-97c68bb394aa
- url
- https://medium.com/@sevaraa.2411/p-y-t-h-o-n-asoslari-dars-2-97c68bb394aa
- canonical_url
- https://medium.com/@sevaraa.2411/p-y-t-h-o-n-asoslari-dars-2-97c68bb394aa
- author_url
- https://medium.com/@sevaraa.2411
- status
- ok
- fetched_at
- 2026-06-15 22:55:51