Bu bo'limda Python'ning tayyor kod xazinalari o'rganildi: o'rnatishsiz keladigan standart kutubxona va PyPI'dan o'rnatiladigan tashqi kutubxonalar.
Standart kutubxona: "batareykalar ichida"
Python o'rnatilishi bilan birga yuzlab modul keladi — ularni shunchaki import qilasiz. Kursda uchraganlari va eng kerakligi:
| Modul | Vazifasi | Tipik chaqiruv |
|---|---|---|
random |
Tasodifiylik | randint, choice, shuffle |
datetime |
Sana-vaqt | date.today(), farqlar |
math |
Matematika | sqrt, ceil, pi |
os |
Fayl tizimi | listdir, path.exists |
json / pickle |
Saqlash | o'tgan bo'limda |
unittest |
Testlash | o'tgan bo'limda |
Amaliy misollar:
import random
import datetime
import math
print(random.randint(1, 6)) # o'yin soqqasi
print(random.choice(["osh", "somsa"])) # tasodifiy tanlov
bugun = datetime.date.today()
print(bugun)
yangi_yil = datetime.date(2027, 1, 1)
print("Yangi yilgacha", (yangi_yil - bugun).days, "kun")
print(math.sqrt(144))
Natija (misol):
4
osh
2026-07-05
Yangi yilgacha 180 kun
12.0
random.shuffle(royxat) ro'yxatni joyida aralashtiradi — test savollari, kartalar, navbatlar uchun qulay.
Import usullari
import math # murojaat: math.sqrt(16)
from math import sqrt # murojaat: sqrt(16)
from math import sqrt, pi # bir nechtasini birga
import numpy as np # taxallus bilan (keng tarqalgan kelishuv)
Qaysi birini tanlash: modul ko'p ishlatilsa import math o'qishni aniq qiladi (math.sqrt — qayerdan kelgani ko'rinib turadi); bitta-ikki funksiya kerak bo'lsa from ... import qisqaroq. from math import * — yomon amaliyot: qaysi nom qayerdan kelgani yo'qoladi.
Tipik xato — import qilmasdan ishlatish:
print(random.randint(1, 6)) # tepada import random yo'q
Natija:
NameError: name 'random' is not defined
Import odatda fayl boshida yoziladi — barcha bog'liqliklar bir qarashda ko'rinadi.
PyPI va pip: tashqi kutubxonalar
Standart kutubxonada yo'q narsa deyarli har doim PyPIda (pypi.org) bor — yuz minglab tayyor paket. O'rnatish pip bilan, terminalda (Python kodi ichida emas!):
pip install requests
O'rnatilgach oddiy modul kabi ishlatiladi:
import requests
javob = requests.get("https://ochiqkurs.uz")
print(javob.status_code)
Natija:
200
200 — "so'rov muvaffaqiyatli" degan HTTP kodi. Uch qator kod bilan dasturingiz internetga chiqdi — tayyor kutubxonalarning kuchi shunda.
Tanish nomlarning hammasi PyPI paketlari: requests (HTTP), aiogram (Telegram botlar), numpy/pandas (ma'lumotlar tahlili), django/fastapi (veb), pillow (rasmlar). Har biriga Ochiq Kursda alohida kurs bor — bu kursdan keyingi yo'llar aynan shulardan boshlanadi.
Kutubxona tanlash qoidalari
- Avval standart kutubxonaga qarang — sana, tasodifiylik, fayl, JSON kabi masalalar "qutidan chiqqan" modullar bilan yechiladi.
- Tashqi paket tanlaganda ommaviyligiga e'tibor bering: keng ishlatiladigan paket — hujjatlari to'liq, xatolari tuzatilgan, savollaringizga javob topiladi.
- O'rnatgan paketlaringizni bilib yuring:
pip list— o'rnatilganlar ro'yxati.
Eslab qoling
- Standart kutubxona o'rnatishsiz keladi:
random,datetime,math,os,json. import modul/from modul import nom/import modul as taxallus; importlar fayl boshida.- PyPI — paketlar katalogi;
pip install nom— terminalda o'rnatish. requests.get(url).status_code— birinchi HTTP so'rovingiz; 200 — muvaffaqiyat.- Qoida: avval standart kutubxona, keyin PyPI.
Amaliyot
- O'yin soqqasini 5 marta "tashlab" natijalarni ro'yxatga yig'ing; eng kattasini toping.
- Tug'ilgan kuningizgacha necha kun qolganini
datetimebilan hisoblang. mathdan uchta funksiyani sinang:sqrt(225),ceil(4.2),pibilan doira yuzi.- 5 kishilik ro'yxatni
random.shufflebilan aralashtirib, "bugungi navbatchi"nichoicebilan tanlang. pip install requestsqilib, ikki saytning status kodini oling; mavjud bo'lmagan sahifada qanday kod kelishini ko'ring (404).- O'zingiz qiziqqan sohada PyPI'dan bitta paket toping (masalan, "qrcode") va nima qilishini bir gap bilan yozing.
Bo'lim testi kutubxonalar mavzusini yopadi.