Mundarija (24)
- 1. Kirish va motivatsiya
- 2. Nazariya — chuqur tushuntirish
- 2.1. Pythonning asosiy kuchi — "yelim til"
- 2.2. Ma'lumot tahlili va ilm-fan
- 2.3. Sun'iy intellekt va mashinaviy o'rganish
- 2.4. Web dasturlash (backend)
- 2.5. Avtomatlashtirish va skriptlar
- 2.6. DevOps va tizim boshqaruvi
- 2.7. Kibxavfsizlik
- 2.8. O'yin, GUI va boshqa sohalar
- 2.9. Python QAYERDA ishlatilmaydi
- 2.10. Qaysi soha sizga mos — va kursda qayerga urg'u berish
- 3. Tez ma'lumotnoma
- 4. Batafsil misollar
- Misol 1 — Avtomatlashtirish: 500 faylni qayta nomlash
- Misol 2 — Ma'lumot tahlili: savdo hisoboti
- Misol 3 — Web: bir necha qatorda API
- Misol 4 — Sun'iy intellekt: model o'qitish
- 5. To'g'ri va noto'g'ri tushunishlar
- 6. Keng tarqalgan xatolar va yechimlari
- 7. Integratsiya — bu bilim qayerda kerak bo'ladi
- 8. Eng yaxshi amaliyotlar
- 9. Amaliy topshiriq
- Xulosa
1.6-dars: Python qayerda ishlatiladi — real misollar va sohalar
1-QISM — KOMPYUTER VA DASTURLASH · 6-dars · Oldingi dars: Python tarixi va falsafasi
1. Kirish va motivatsiya
O'rganishning eng katta dushmani — "bu menga nima beradi?" degan savolga javob yo'qligi.
Ko'p odam dasturlashni boshlaydi, ikki hafta o'zgaruvchi va sikl o'rganadi, keyin tashlab ketadi. Sababi bilim qiyinligida emas — maqsad ko'rinmasligida. Sikl o'rganayotganda u sizni qayerga olib borishini bilmasangiz, motivatsiya tugaydi.
Bu dars aynan shu muammoni yechadi. Biz Pythonning haqiqiy ishlatilishini ko'ramiz — reklama shiorlari emas, aniq kompaniyalar va aniq vazifalar.
Bu darsni tugatgach:
- Python bilan qanday ish topish mumkinligini bilasiz — sohalar va lavozimlar bo'yicha
- Qaysi soha sizga qiziqroq ekanini tushunasiz va kursning qaysi qismlariga urg'u berishni rejalashtirasiz
- Python qayerda ishlatilmasligini ham bilasiz — bu bilim vaqtingizni tejaydi
- Har bir sohaga qanday kutubxonalar kerakligini va ular kursning qayerida bo'lishini ko'rasiz
Diqqat: bu darsda ko'p kutubxona nomi uchraydi. Ularni yodlash shart emas. Maqsad — manzarani ko'rish. Har biri kursning o'z joyida batafsil o'rganiladi.
2. Nazariya — chuqur tushuntirish
2.1. Pythonning asosiy kuchi — "yelim til"
Pythonni ko'pincha "glue language" (yelim til) deb atashadi. Ma'nosi: u turli qismlarni bir-biriga bog'lashda ajoyib.
Buni tushunish uchun tipik ish oqimini ko'ring:
Ma'lumot bazasidan olish → tozalash → hisoblash → hisobot yasash → yuborishHar bir qadam uchun Pythonda tayyor kutubxona bor va ularni birlashtirish osson. Boshqa tilda bu ishni qilish mumkin — lekin ko'proq vaqt oladi.
Pythonning ustunligi eng tez ishlashida emas, balki eng tez natijaga olib kelishida. Ko'p vazifada dasturchi vaqti kompyuter vaqtidan qimmatroq.
2.2. Ma'lumot tahlili va ilm-fan
Bu — Pythonning eng kuchli sohasi.
Nima qilinadi: katta hajmdagi ma'lumotni yig'ish, tozalash, tahlil qilish va vizualizatsiya qilish.
Asosiy kutubxonalar:
| Kutubxona | Nima uchun | Kursda |
|---|---|---|
pandas |
Jadval bilan ishlash (Excel'ning kuchli varianti) | 24-qism |
numpy |
Massiv va matematik hisob | 24-qism |
matplotlib, seaborn |
Grafik va diagramma | 24-qism |
scipy |
Ilmiy hisoblash, statistika | 24-qism |
Real misollar:
- NASA — kosmik missiyalar ma'lumotini tahlil qilishda Pythondan foydalanadi
- CERN — Katta Adron Kollayderidagi tajriba ma'lumotlari
- Qora tuynuk surati (2019) — birinchi tasvirni qayta ishlashda Python kutubxonalari ishlatilgan
- Banklar — kredit xavfini baholash, firibgarlikni aniqlash
O'zbekistonda: bank va telekom kompaniyalarida mijoz ma'lumotlarini tahlil qilish, savdo tahlili, hisobotlarni avtomatlashtirish.
2.3. Sun'iy intellekt va mashinaviy o'rganish
Bu sohada Python deyarli monopolist.
Nima qilinadi: ma'lumotdan o'rganadigan modellar yaratish — tasvirni tanish, matnni tushunish, bashorat qilish.
Asosiy kutubxonalar:
| Kutubxona | Nima uchun | Kursda |
|---|---|---|
scikit-learn |
Klassik mashinaviy o'rganish | 25-qism |
PyTorch |
Chuqur o'rganish (neyron tarmoqlar) | 25-qism |
TensorFlow |
Chuqur o'rganish (Google) | 25-qism |
transformers |
Til modellari (LLM) | 25-qism |
Real misollar:
- ChatGPT, Claude, Gemini — bu modellarning o'qitish kodi asosan Pythonda
- Tesla — avtopilot uchun kompyuter ko'rish modellari
- Netflix, YouTube, Spotify — tavsiya tizimlari
- Tibbiyot — rentgen va MRT tasvirlarida kasallik aniqlash
Nega aynan Python? Chunki ilmiy jamoa uni tanladi va butun ekotizim shu atrofda qurildi. Yangi tadqiqot chiqsa — uning kodi deyarli har doim Pythonda bo'ladi.
2.4. Web dasturlash (backend)
Nima qilinadi: saytning "ko'rinmas" qismi — ma'lumotlar bazasi, biznes mantiq, API.
Asosiy freymvorklar:
| Freymvork | Xususiyati | Kursda |
|---|---|---|
Django |
"Batareyalar ichida" — hamma narsa tayyor | 21-qism |
FastAPI |
Zamonaviy, tez, API uchun ideal | 20-qism |
Flask |
Minimalist, kichik loyihalar uchun | 22-qism |
Real misollar:
- Instagram — dunyodagi eng katta Django loyihalaridan biri
- Spotify — backend xizmatlarining katta qismi
- Dropbox — asos Pythonda qurilgan
- Reddit — Pythonda yozilgan
- Pinterest — Django
Muhim nozik jihat: Instagram Pythonda yozilgani "Python cheksiz miqyoslanadi" degani emas. Ular ko'p yillik optimizatsiya qilishgan, og'ir qismlarni C ga ko'chirishgan va o'z vositalarini yozishgan. Lekin bu Pythonda milliardlab foydalanuvchili tizim qurish mumkinligini isbotlaydi.
2.5. Avtomatlashtirish va skriptlar
Bu — Pythonning eng kam gapiriladigan, lekin eng ko'p ishlatiladigan sohasi.
Nima qilinadi: takrorlanuvchi qo'l mehnatini avtomatlashtirish.
Misollar:
- 500 ta faylni qayta nomlash
- Har kuni saytdan narxlarni yig'ib, jadvalga yozish
- Yuzlab Excel faylini birlashtirish
- Hisobotni avtomatik yasab, elektron pochtaga yuborish
- Serverdagi eski fayllarni tozalash
Asosiy kutubxonalar:
| Kutubxona | Nima uchun | Kursda |
|---|---|---|
os, pathlib, shutil |
Fayl va papkalar | 15-qism |
requests |
Internetdan ma'lumot olish | 26-qism |
BeautifulSoup |
Sayt sahifasidan ma'lumot ajratish | 26-qism |
openpyxl |
Excel fayllari | 26-qism |
schedule |
Vazifani rejalashtirish | 26-qism |
Nega bu muhim: siz dasturchi bo'lmasangiz ham, Python bilan o'z ishingizni avtomatlashtirishingiz mumkin. Buxgalter, marketolog, jurnalist — barchasi foyda ko'radi.
Bu ko'pincha Python o'rganishning eng tez foyda beradigan yo'li: bir hafta o'rganib, har kuni ikki soatlik qo'l ishini 10 soniyaga tushirish mumkin.
2.6. DevOps va tizim boshqaruvi
Nima qilinadi: serverlarni sozlash, dasturlarni chiqarish, monitoring.
Asosiy vositalar:
| Vosita | Nima | Kursda |
|---|---|---|
Ansible |
Serverlarni avtomatik sozlash | 28-qism |
boto3 |
AWS bilan ishlash | 28-qism |
| CI/CD skriptlari | Avtomatik test va chiqarish | 28-qism |
Ko'p DevOps vositasi Pythonda yozilgan yoki Python API ga ega. Bu sohada Python — ikkinchi til sifatida deyarli majburiy.
2.7. Kibxavfsizlik
Nima qilinadi: zaifliklarni topish, tarmoqni tahlil qilish, xavfsizlik vositalarini yozish.
Pythonning bu sohadagi ustunligi — tez prototip yasash. Xavfsizlik mutaxassisi yangi g'oyani 20 qatorda sinab ko'radi.
Kutubxonalar: scapy (tarmoq paketlari), requests, cryptography.
Ko'p mashhur xavfsizlik vositasi Pythonda yozilgan yoki Python plaginlarini qo'llab-quvvatlaydi.
2.8. O'yin, GUI va boshqa sohalar
O'yin: pygame bilan 2D o'yin yozish mumkin. Lekin jiddiy o'yin sanoati C++ va C# da. Python bu yerda o'rganish va prototip uchun.
Ish stoli ilovasi: Tkinter (standart), PyQt, Kivy. Ishlaydi, lekin natija odatda "nativ" ilovadek ko'rinmaydi.
Mikrokontroller: MicroPython — Raspberry Pi Pico va shunga o'xshash qurilmalarda. Robot va IoT loyihalari uchun qiziq soha.
Ta'lim: Python dunyoda birinchi dasturlash tili sifatida eng ko'p tanlanadigan til. MIT, Stanford, Berkeley — hammasi Pythondan boshlaydi.
2.9. Python QAYERDA ishlatilmaydi
Bu bo'lim boshqa kurslarda kam uchraydi, lekin u vaqtingizni tejaydi.
| Soha | Nega Python emas | Nima ishlatiladi |
|---|---|---|
| Mobil ilova | Ekotizim yo'q, natija sekin va og'ir | Swift (iOS), Kotlin (Android) |
| Brauzerda ishlash | Brauzer faqat JavaScript'ni tushunadi | JavaScript, TypeScript |
| Operatsion tizim, drayver | Past darajali kirish yo'q, GC bor | C, Rust |
| Jiddiy o'yin dvigateli | Tezlik yetarli emas | C++, C# |
| Real vaqt tizimlari | Axlat yig'uvchi kutilmagan pauza beradi | C, Rust, Ada |
| Juda cheklangan qurilmalar | Interpretator uchun joy yo'q | C, Assembler |
Bu kamchilik emas — bu chegara. Bolg'a bilan taxta arralanmaydi. Professional dasturchi asbobning chegarasini biladi.
2.10. Qaysi soha sizga mos — va kursda qayerga urg'u berish
| Agar sizni qiziqtirsa | Diqqat qiling | Kursdagi qismlar |
|---|---|---|
| Ma'lumot, statistika, tahlil | pandas, numpy, vizualizatsiya | 24 |
| Sun'iy intellekt | scikit-learn, PyTorch, LLM | 25 |
| Sayt va API yasash | FastAPI, Django, bazalar | 20, 21, 23 |
| Ishni avtomatlashtirish | fayllar, requests, scraping | 15, 26 |
| Server va infratuzilma | Docker, CI/CD, monitoring | 28 |
| Katta tizimlar qurish | arxitektura, mikroservis, boshqa tillar | 27, 29, 30 |
Muhim: qaysi sohani tanlasangiz ham, 1–19-qismlar hamma uchun majburiy. Ular tilning o'zi va professional vositalar. Ixtisoslashuv keyin boshlanadi.
3. Tez ma'lumotnoma
Soha va asosiy kutubxona
Ma'lumot tahlili → pandas, numpy, matplotlib
Sun'iy intellekt → scikit-learn, PyTorch
Web backend → FastAPI, Django, Flask
Avtomatlashtirish → requests, BeautifulSoup, pathlib
DevOps → Ansible, boto3
Kibxavfsizlik → scapy, cryptographyPython ishlatilmaydigan joylar
Mobil ilova → Swift, Kotlin
Brauzer → JavaScript
OT va drayver → C, Rust
Jiddiy o'yin → C++, C#
Real vaqt → C, Rust4. Batafsil misollar
Bu misollar Pythonning kuchini ko'rsatish uchun. Hozir tushunmasangiz normal — har biri kursda o'z joyida o'rganiladi. Diqqatni qancha kam kod bilan qancha ish qilinayotganiga qarating.
Misol 1 — Avtomatlashtirish: 500 faylni qayta nomlash
from pathlib import Path
# Papkadagi barcha .jpg faylni "rasm-001.jpg" ko'rinishiga o'tkazish
papka = Path("rasmlar")
for raqam, fayl in enumerate(sorted(papka.glob("*.jpg")), start=1):
yangi_nom = papka / f"rasm-{raqam:03d}.jpg"
fayl.rename(yangi_nom)
print(f"{fayl.name} -> {yangi_nom.name}")Nima ko'rsatdi: 2.5-bo'lim. Olti qator kod bilan soatlab qo'l ishi bajariladi. :03d — sonni uch xonaga to'ldiradi (1 → 001), shuning uchun fayllar to'g'ri tartiblanadi.
Misol 2 — Ma'lumot tahlili: savdo hisoboti
import pandas as pd
# CSV faylni o'qish
savdo = pd.read_csv("savdo.csv")
# Har bir mahsulot bo'yicha umumiy tushum
natija = (
savdo
.groupby("mahsulot")["summa"]
.sum()
.sort_values(ascending=False)
)
print(natija.head(5))
# Natija:
# mahsulot
# Noutbuk 45200000
# Telefon 38100000
# Quloqchin 12400000
# Sichqoncha 8900000
# Klaviatura 6700000Nima ko'rsatdi: 2.2-bo'lim. Excel'da bu bir necha qadam va qo'l mehnati. Pythonda — bir marta yoziladi va har oy avtomatik qayta ishlatiladi.
Misol 3 — Web: bir necha qatorda API
from fastapi import FastAPI
app = FastAPI()
@app.get("/salom/{ism}")
def salomlash(ism: str):
return {"xabar": f"Salom, {ism}!"}Ishga tushirilganda http://localhost:8000/salom/Aziza manzili {"xabar": "Salom, Aziza!"} qaytaradi. Ustiga — avtomatik hujjat ham yaratiladi.
Nima ko'rsatdi: 2.4-bo'lim. Besh qator kod bilan ishlaydigan API. Bu prototip qilishni juda tezlashtiradi.
Misol 4 — Sun'iy intellekt: model o'qitish
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier
# Ma'lumotni yuklash
X, y = load_iris(return_X_y=True)
# O'qitish va sinov to'plamlariga bo'lish
X_oqitish, X_sinov, y_oqitish, y_sinov = train_test_split(X, y, test_size=0.2)
# Modelni o'qitish
model = RandomForestClassifier()
model.fit(X_oqitish, y_oqitish)
# Aniqlikni tekshirish
aniqlik = model.score(X_sinov, y_sinov)
print(f"Aniqlik: {aniqlik:.1%}") # Aniqlik: 96.7%Nima ko'rsatdi: 2.3-bo'lim. Sakkiz qator kod bilan ishlaydigan mashinaviy o'rganish modeli. Bu murakkab matematikani yashiradi — lekin uni tushunish baribir kerak (25-qism).
5. To'g'ri va noto'g'ri tushunishlar
| Noto'g'ri fikr | To'g'risi |
|---|---|
| "Python faqat sun'iy intellekt uchun" | AI — bir soha. Avtomatlashtirish va web ham juda katta |
| "Python bilan jiddiy tizim qurib bo'lmaydi" | Instagram, Dropbox, Reddit — hammasi Pythonda |
| "Instagram Pythonda, demak tezlik muammo emas" | Ular ko'p yil optimizatsiya qilishgan va og'ir qismni C ga ko'chirishgan |
| "Python bilan mobil ilova yozsa bo'ladi" | Texnik jihatdan mumkin, amalda deyarli hech kim qilmaydi |
| "Avtomatlashtirish — jiddiy dasturlash emas" | Bu Pythondan eng ko'p qaytim beradigan soha |
| "Avval hamma kutubxonani o'rganish kerak" | Yo'q. Avval tilni. Kutubxona kerak bo'lganda o'rganiladi |
| "Bitta soha tanlash shart" | Yo'q, lekin bittasidan chuqur boshlash tezroq natija beradi |
6. Keng tarqalgan xatolar va yechimlari
1. Kutubxonalarni tilni bilmasdan o'rganishga urinish
Muammo: pandas ni o'rganmoqchi bo'lasiz, lekin list va dict ni bilmaysiz — natijada har qadamda tiqilib qolasiz.
Yechim: avval til (1–10-qismlar), keyin kutubxona. Poydevorsiz uy qurilmaydi.
2. Bir vaqtda hamma sohani o'rganishga urinish
Muammo: web ham, AI ham, DevOps ham qiziq — natijada hech biri chuqur o'rganilmaydi.
Yechim: bittasini tanlang va oxirigacha olib boring. Ikkinchisiga o'tish ancha oson bo'ladi.
3. "Tayyor kod ko'chirish" bilan o'rganish
Muammo: internetdan kod ko'chirib ishlatasiz, ishlaydi — lekin nega ishlashini bilmaysiz. Buzilganda nima qilishni bilmay qolasiz.
Yechim: ko'chirgan har bir qatorni tushuning. "Bu qator nima qiladi?" degan savolga javob bera olmasangiz — to'xtang va o'rganing.
4. Loyihasiz o'rganish
Muammo: darsliklarni o'qiysiz, mashqlarni bajarasiz — lekin haqiqiy narsa yasamaysiz. Bilim mustahkamlanmaydi.
Yechim: har bosqichdan keyin kichik shaxsiy loyiha qiling. O'z ehtiyojingizdan kelib chiqqan bo'lsa yanada yaxshi.
5. Pythonni "hamma narsa uchun" deb o'ylash
Muammo: mobil ilova yoki brauzer o'yini yozishga urinib, haftalar yo'qotish.
Yechim: 2.9-bo'limga qarang. Chegaralarni bilish — professionallik belgisi.
7. Integratsiya — bu bilim qayerda kerak bo'ladi
Bu dars — kursning xaritasi. Har bir soha o'z qismiga ishora qiladi:
- 15, 26-qismlar: avtomatlashtirish va scraping
- 20, 21, 22-qismlar: web freymvorklar
- 23-qism: ma'lumotlar bazalari
- 24-qism: pandas, numpy, vizualizatsiya
- 25-qism: mashinaviy o'rganish va AI
- 28-qism: DevOps va infratuzilma
- 31-qism: karyera, portfolio, intervyu
8. Eng yaxshi amaliyotlar
Bitta sohani tanlang — lekin poydevorni tashlab ketmang. 1–19-qismlar hamma uchun.
O'z ehtiyojingizdan boshlang. Ishingizda takrorlanuvchi vazifa bormi? Uni avtomatlashtiring. Bu eng kuchli motivatsiya.
Kutubxonani kerak bo'lganda o'rganing. Oldindan hammasini yodlash — vaqt isrofi.
Chegaralarni biling. Python nima uchun mos emasligini bilish tanlovni osonlashtiradi.
Kichik loyiha yasang. O'qish bilim bermaydi — yasash beradi.
Real misollarga qarang. Yoqtirgan dasturingiz qanday qurilganini qidiring — bu motivatsiya beradi.
9. Amaliy topshiriq
Vazifa 1: O'z sohangizni tanlash
Quyidagi savollarga yozma javob bering:
- Sizni qaysi soha eng ko'p qiziqtiradi? Nega?
- Shu sohada Python bilan qanday ish qilinadi? (2-bo'limga qarang)
- Kursning qaysi qismlari sizga eng kerak? (2.10-bo'limdagi jadval)
- Bu sohada ishlaydigan bitta real mahsulot toping va u qanday qurilganini qidiring
Vazifa 2: Avtomatlashtirish imkoniyatini topish
O'z hayotingiz yoki ishingizdan uchta takrorlanuvchi vazifani yozing. Har biri uchun:
- Hozir unga qancha vaqt ketadi (haftasiga)?
- Uni avtomatlashtirish mumkinmi?
- Buning uchun nima kerak bo'lardi?
Namuna:
Vazifa: har hafta 5 ta Excel faylni bitta jadvalga birlashtirish Vaqt: haftasiga ~40 daqiqa Avtomatlashtirish: ha Kerak:
pandas(fayllarni o'qish va birlashtirish),pathlib(papkadagi fayllarni topish)
Bu ro'yxatni saqlang. Kursning 26-qismiga yetganingizda ularni haqiqatan yozasiz.
Vazifa 3: Chegaralarni tekshirish
Quyidagi loyihalar uchun Python mos keladimi? Javobingizni asoslang:
- Android uchun taksi buyurtma ilovasi
- Har kuni 10 ta saytdan valyuta kursini yig'uvchi dastur
- Yurak stimulyatori uchun boshqaruv dasturi
- Universitet uchun talabalar bazasi bilan ishlaydigan sayt
- PlayStation uchun 3D o'yin
Javoblar
- Yo'q — mobil ilova uchun Kotlin. Lekin backendini Pythonda yozish mumkin
- Ha — bu Pythonning eng kuchli sohasi (
requests+ rejalashtirish) - Yo'q — real vaqt tizimi, axlat yig'uvchining pauzasi qabul qilinmaydi. C yoki Ada
- Ha — Django yoki FastAPI bunga juda mos
- Yo'q — C++ yoki maxsus dvigatel. Python faqat yordamchi skriptlar uchun
Nimani mustahkamlaydi: 2.9 (chegaralar) va 2.10 (yo'nalish tanlash).
Xulosa
Bu darsda Pythonning real dunyodagi o'rnini ko'rdik.
Eng muhim uch fikr:
Python — ko'p sohali til. Ma'lumot tahlili, AI, web, avtomatlashtirish, DevOps. Bu uning eng katta ustunligi: bitta til bilan ko'p eshik ochiladi.
Eng tez foyda — avtomatlashtirishdan. Bir hafta o'rganib, kundalik qo'l ishini yo'q qilish mumkin. Bu motivatsiyani ushlab turadigan eng yaxshi usul.
Chegaralarni bilish — professionallik. Mobil ilova, brauzer, drayver, jiddiy o'yin — bular Python uchun emas. Buni bilish vaqtingizni tejaydi.
Keyingi darsda Python ekotizimini ko'ramiz: versiyalar qanday chiqadi, PyPI nima, 500 000 paket orasidan qanday tanlash kerak.
Izohlar (0)
Izoh yozish uchun kiring.
- Hozircha izoh yo'q. Birinchi bo'ling!