⬅️ Bosh sahifaga

🐍 Python Asoslari

To'liq Dars Prezentatsiyasi

🚀Python Dasturlash Tiliga Xush Kelibsiz!

🎯 Kurs maqsadi

Bu kurs Python dasturlash tilining asosiy tushunchalarini o'rganishga bag'ishlangan. Siz Python'ning eng muhim elementlarini amaliy misollar bilan o'rganasiz.

📋 Kurs tarkibi

  • Ma'lumot turlari (int, float, str, bool)
  • Shart operatorlari (if, elif, else)
  • Takrorlash operatorlari (for, while)
  • Ro'yxatlar (Lists)
  • Kortejlar (Tuples)
  • To'plamlar (Sets)
  • Amaliyot topshiriqlari

⏱️ Kurs davomiyligi

Kurs taxminan 3-4 soat davom etadi. Har bir mavzu amaliy misollar va topshiriklar bilan to'ldirilgan.

💡 Muvaffaqiyat sirlari

  • Amaliyot qiling - ko'p kod yozing
  • Xatolardan qo'rqmang - ular o'rganish qismi
  • Savollar bering - bu normal holat
  • Sabr-toqat - dasturlash vaqt talab qiladi

🎓 Kursdan keyin nimani bilasiz?

Python dasturlash tilining asosiy tushunchalarini, ma'lumotlar bilan ishlashni, mantiqiy operatorlarni va sodda dasturlar yozishni o'rganasiz. Bu bilimlar bilan oddiy loyihalar yaratishingiz mumkin bo'ladi.

📊Ma'lumot turlari (Data Types)

🔢 Raqamlar (Numbers)

# Butun sonlar (int)
age = 25
year = 2024

# O'nlik sonlar (float)
price = 19.99
temperature = 36.6

# Kompleks sonlar (complex)
z = 3 + 4j

📝 Matnlar (Strings)

# Matn yaratish
name = "Ahmad"
surname = 'Karimov'

# Matn methodlari
text = "Python dasturlash"
print(text.upper())    # PYTHON DASTURLASH
print(text.lower())    # python dasturlash
print(text.title())    # Python Dasturlash

✅ Mantiqiy qiymatlar (Boolean)

is_student = True
is_graduated = False

# Mantiqiy operatorlar
print(True and False)    # False
print(True or False)     # True
print(not True)          # False

🔍 Turni tekshirish

age = 25
print(type(age))         # <class 'int'>
print(isinstance(age, int))  # True

🎮 Interaktiv Demo: Ma'lumot turlari

🔀Shart operatorlari (If-Else)

Asosiy if-else tuzilmasi

age = 18

if age >= 18:
    print("Siz voyaga yetgansiz")
else:
    print("Siz hali voyaga yetmagansiz")

Elif (else if)

ball = 85

if ball >= 90:
    print("A'lo baho")
elif ball >= 80:
    print("Yaxshi baho")
elif ball >= 70:
    print("Qoniqarli baho")
else:
    print("Qoniqarsiz baho")

💡 Muhim eslatma

Ternary operator: status = "Katta" if age >= 18 else "Kichik"

🎮 Interaktiv Demo: Baho tizimi

🔄Takrorlash operatorlari (Loops)

🔁 For loop

# Raqamlar bilan ishlash
for i in range(5):
    print(f"Qadam {i}")

# Range parametrlari
for i in range(1, 11):      # 1 dan 10 gacha
    print(i)

# Matn bilan ishlash
name = "Python"
for letter in name:
    print(letter)

🔄 While loop

# Oddiy while loop
count = 0
while count < 5:
    print(f"Sanoq: {count}")
    count += 1

# Parol tekshirish
password = ""
while password != "123":
    password = input("Parolni kiriting: ")
    if password != "123":
        print("Noto'g'ri parol!")

Break va Continue

# Break - loopni to'xtatish
for i in range(10):
    if i == 5:
        break
    print(i)  # 0, 1, 2, 3, 4

# Continue - keyingi iteratsiyaga o'tish
for i in range(10):
    if i % 2 == 0:
        continue
    print(i)  # 1, 3, 5, 7, 9

🎮 Interaktiv Demo: Takrorlash

📋Ro'yxatlar (Lists)

List yaratish

# Bo'sh list
fruits = []
numbers = list()

# Qiymatlar bilan
fruits = ["olma", "banan", "apelsin"]
numbers = [1, 2, 3, 4, 5]
mixed = [1, "salom", 3.14, True]

List methodlari

Method Tavsif Misol
.append() Oxiriga qo'shish fruits.append("uzum")
.insert() Belgilangan joyga qo'shish fruits.insert(1, "shaftoli")
.remove() Qiymat bo'yicha o'chirish fruits.remove("banan")
.pop() Oxirigisini o'chirish fruits.pop()
.sort() Tartibga solish numbers.sort()

🎯 List Comprehension

# Oddiy usul
squares = []
for i in range(10):
    squares.append(i**2)

# List comprehension
squares = [i**2 for i in range(10)]

# Shart bilan
even_squares = [i**2 for i in range(10) if i % 2 == 0]

🎮 Interaktiv Demo: Ro'yxat bilan ishlash

📦Kortejlar (Tuples)

Tuple yaratish

# Bo'sh tuple
empty_tuple = ()
empty_tuple = tuple()

# Qiymatlar bilan
coordinates = (10, 20)
colors = ("qizil", "yashil", "ko'k")

# Bir elementli tuple
single = (42,)  # vergul muhim!

Tuple unpacking

# Koordinatalar
point = (10, 20)
x, y = point

# Qiymatlarni almashtirish
a, b = 10, 20
a, b = b, a  # a=20, b=10

Tuple vs List

# Tuple - o'zgarmas
my_tuple = (1, 2, 3)
# my_tuple[0] = 10  # Xato!

# List - o'zgaruvchan
my_list = [1, 2, 3]
my_list[0] = 10  # To'g'ri!

Tuple methodlari

numbers = (1, 2, 3, 2, 4, 2)

# Element sonini hisoblash
count = numbers.count(2)  # 3

# Element joylashuvini topish
index = numbers.index(3)  # 2

⚠️ Muhim xususiyat

Tuple o'zgarmas (immutable)! Yaratilgandan keyin o'zgartirib bo'lmaydi. Bu xususiyat tuple'ni xavfsiz va tezroq qiladi.

🎯To'plamlar (Sets)

Set yaratish

# Bo'sh set
empty_set = set()  # {} dict yaratadi!

# Qiymatlar bilan
numbers = {1, 2, 3, 4, 5}
fruits = {"olma", "banan", "apelsin"}

# Listdan set yaratish
numbers_list = [1, 2, 2, 3, 3, 3, 4]
unique_numbers = set(numbers_list)  # {1, 2, 3, 4}

Set operatsiyalari

🔗 Birlashtirish (Union)

set1 = {1, 2, 3}
set2 = {3, 4, 5}
union_set = set1 | set2  # {1, 2, 3, 4, 5}
# yoki
union_set = set1.union(set2)
            

🔀 Kesishma (Intersection)

set1 = {1, 2, 3}
set2 = {2, 3, 4}
intersection_set = set1 & set2  # {2, 3}
# yoki
intersection_set = set1.intersection(set2)
            

➖ Ayirma (Difference)

set1 = {1, 2, 3}
set2 = {2, 3, 4}
difference_set = set1 - set2  # {1}
# yoki
difference_set = set1.difference(set2)
            

🔄 Simmetrik ayirma

set1 = {1, 2, 3}
set2 = {2, 3, 4}
symmetric_diff = set1 ^ set2  # {1, 4}
# yoki
symmetric_diff = set1.symmetric_difference(set2)
            

Set methodlari

Method Tavsif Misol
.add() Element qo'shish fruits.add("uzum")
.remove() Element o'chirish (xato beradi agar element yo'q bo'lsa) fruits.remove("banan")
.discard() Element o'chirish (xato bermaydi) fruits.discard("banan")
.pop() Ixtiyoriy elementni o'chirish fruits.pop()
.clear() Barcha elementlarni o'chirish fruits.clear()

💡 Muhim xususiyat

To'plamlar takrorlanuvchi elementlarni saqlamaydi va tartib saqlanmaydi. Bu ularni unikal qiymatlar bilan ishlash uchun ideal qiladi.

🎮 Interaktiv Demo: To'plamlar bilan ishlash

🏋️Amaliyot topshiriqlari

1-topshiriq: Sonlar filtri

1 dan 20 gacha sonlardan faqat juft sonlarni ro'yxatga kiritadigan dastur yozing.

# Yechim
even_numbers = [x for x in range(1, 21) if x % 2 == 0]
print(even_numbers)
        

2-topshiriq: Matn teskari aylantirish

Foydalanuvchidan matn qabul qilib, uni teskari tartibda chiqaradigan dastur yozing.

# Yechim
text = input("Matn kiriting: ")
reversed_text = text[::-1]
print(reversed_text)
        

3-topshiriq: To'plamlar bilan ishlash

Ikkita ro'yxatdan umumiy elementlarni topib, yangi to'plam sifatida chiqaring.

# Yechim
list1 = [1, 2, 3, 4, 5]
list2 = [4, 5, 6, 7, 8]
common_elements = set(list1) & set(list2)
print(common_elements)
        

🎮 Interaktiv Demo: Amaliyot topshirig'i

Matn kiritib, undagi harflar sonini hisoblang