• Savolingiz bormi?
  • +998 97 534 03 20
  • turayev.ruziboy@bk.ru
 12. PYTHONDA MODULLAR

12. PYTHONDA MODULLAR

Python / 2021-12-19

Har bir yangi dasturning kodini yozish ko‘p vaqt talab qiladigan jarayon
hisoblanadi. Shu sababli, tayyor qism dasturlardan foydalanish har bir dasturchi uchun qulaydir. Zamonaviy dasturlash tillarida bu jarayonni yengillashtirish uchun
tayyor dastur kodlarini saqlovchi kutubxonalar mavjud.

Modullar – alohida faylda yozilgan bo‘lib, turli dasturlarda qo‘llanilishi
mumkin bo‘lgan kodlar majmui.

Boshqa dasturlash tillari kabi Python dasturlash tilining standart kutubxonasi ham
ko‘plab tayyor kod fragmentlari (modullar, standart funksiyalar va b.)dan tarkib topgan.
Python dasturlash tilini yanada takomillashtirish uchun foydalanuvchi tomonidan yozilgan modullarni kutubxonaning alohida qismiga yuklash ham mumkin.
Python dasturlash tilida juda ko‘p modul mavjud bo‘lib, ularning asosiylarini ko‘rib chiqamiz.

 

Modul nomi

Modul tavsifi

math

Modul murakkab matematik ifodalarni hisoblash uchun qo‘llaniladi

random

Modul tasodifiy sonlarni tanlab oladi yoki ro‘yxat
elementlarini tasodifiy tartibda joylashtiradi

tkinter

Modul foydalanuvchi va dastur o‘rtasida o‘zaro aloqa
o‘rnatish uchun oyna, tugmacha va boshqa grafik
elementlardan foydalanish imkonini beradi

datetime

Modul joriy sana va vaqtni ko‘rsatish hamda sanalarni
hisoblash, sanalar ustida amallar bajarish imkonini beradi

socket

Modul kompyuterlarni internet orqali birbiriga ulash uchun qo‘llaniladi

turtle

Modul ekranda chiziq va figuralarni chizish uchun qo‘llaniladi

locale

Modul sonlarni formatlashda belgilangan tartibni
aniqlash muammosini hal qilish uchun qo‘llaniladi

decimal

Modul o‘nli kasr sonlari bilan ishlash va
ularni yaxlitlash uchun qo‘llaniladi

os

Modul katalog va fayllar bilan ishlash uchun
bir qancha imkoniyatlarni beradi

copy

Modul nusxalash bilan bog‘liq masalalarni hal qilishga mo‘ljallangan

sys

Python interpretatorida dasturni bajaruvchi muhit hisoblanadi

pygame

ovoz va maxsus o‘yin grafikasi bilan ishlash imkonini
beruvchi, videoo‘yinlar yaratish uchun mo‘ljallangan

 

Dasturda modullardan foydalanish uchun avval uni dasturga yuklash kerak bo‘ladi. Bu esa uning tarkibida saqlanuvchi kod fragmentiga murojaat qilishni talab qiladi. Modullarni dasturga yuklashning uch xil usuli mavjud.

1-usul. Modul funksiyalarini yuklab olishning bu usulida murojaat etilayotgan kod fragmentidan oldin modulning nomi ko‘rsatilishi lozim. Bunday
dasturlarni o‘qish juda oson, chunki kod qaysi modulga tegishli ekanligini tez aniqlash mumkin.

Sintaksisi:
import modul fayli nomi

import modulni yuklovchi kalit so‘z

 

>>> import math

Har bir funksiyadan oldin modulning nomi ko‘rsatiladi.

2-usul. Modul funksiyalarini yuklab olishning bu usuli uncha katta bo‘lmagan dasturlar uchun qulay. Katta dasturlarda esa dasturni tushunish qiyin kechadi, ya’ni funksiya qaysi modulga taalluqli ekanligini aniqlash uchun biroz urinish
kerak bo‘ladi.

Sintaksisi:
from modul fayli nomi import *

from ... import * – modulni yuklovchi kalit so‘z


3-usul. Moduldan faqat funksiyalarning o‘zini yuklab olish ham mumkin. Agar dasturdan faqat bitta funksiya kerak bo‘lsa, u holda funksiyalarning barchasini emas, kerakli funksiyaning o‘zinigina yuklab olgan ma’qul.

Sintaksisi:
from modul fayli nomi import funksiya nomi

>>> from random import *

>>> randint(1,5)

Standart kutubxonadan random moduli funksiyalarini yuklab oldi.

Funksiya qaysi modulga taalluqli ekanligi ko‘rsatilmaydi.

>>> from random import randint

>>> randint(1,5)

Standart kutubxonadan random modulining randint funksiyasi yuklab olindi.

 

Python dasturlash tili tayyor modullar bilan keladi, modullarning to'liq ro'yxatini quyidagi bo'glama orqali kirib ko'rishingiz mumkin:

Python Module Index — Python 3.9.5 documentation

docs.python.org

 

Python kutubxonasining math moduli o‘z ichiga matematik, trigonometrik va logarifmik amallarni bajaruvchi funksiyalarni qamrab olgan.

 

Funksiyalar

Tavsifi

ceil(x)

Eng yaqin katta butun songacha yaxlitlaydi. Ceil(1.5)==2, ceil(–1.5)= = –1

round(x, n)

x sonini nuqtadan keyin n ta belgi qolgunga qadar yaxlitlaydi

floor(x)

Eng yaqin kichik butun songacha yaxlitlaydi.
floor(1.5)==1, floor(–1.5)= = –2

round(x)

x sonini yaxlitlaydi.

log(a, b)

b asosga ko‘ra a logarifmini hisoblaydi

log10(x)

x sonining o‘nli logarifmini hisoblaydi

sqrt(x)

x ning kvadrat ildizini hisoblaydi

pow(x, n)

x ning n-darajasini hisoblaydi

factorial(x)

x faktorialni hisoblaydi

abs(x)

x ning modulini hisoblaydi

cos(x)

x ning kosinusini hisoblaydi

sin(x)

x ning sinusini hisoblaydi

tan(x)

x ning tangensini hisoblaydi

acos(x)

x ning arkkosinusini hisoblaydi

asin(x)

x ning arksinusini hisoblaydi

atan(x)

x ning arktangensini hisoblaydi

degrees(x)

Radiandan gradusga o‘tkazadi

radians(x)

Gradusdan radianga o‘tkazadi

exp(x)

ex ni qaytaruvchi funksiya

fabs(x)

x ning absolyut qiymatini qaytaradi

 

Bu modulda matematik hisob kitoblarni bajaruvchi funksiyalar va o'zgaruvchilar joylashgan. Keling ularga ba'zi misollarni ko'ramiz.

sqrt() - qavs ichida berilgan qiymatning kvadrat ildizini qaytaradi

 

5.0

 

pow(x,y) - x ning y-darajasini qaytaradi

 

125.0

 

pi ning qiymatini aniqlaymiz.

 

3.141592653589793

 

1 topshiriq. y=x*cosx funksiyaning qiymatini hisoblang

 

Pythonda dastur tuzilishi:

 

x ning qiymatini kiriting =1

y ning qiymati = 0.5403023058681398

 

2 topshiriq. y=|sinx|+|cosx| funksiyaning qiymatini hisoblang

 

Pythonda dastur tuzilishi:

x ning qiymatini kiriting =-1

y ning qiymati = 1.3817732906760363

 

3 topshiriq.  funksiyaning qiymatini hisoblang 

Pythonda dastur tuzilishi:

x=3

Natija a= -1.5735972951640635

4 topshiriq.  Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

x=3

Natija a= -1.5735972951640635

 

5 topshiriq.   Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

y=3

Natija b= 0.519914856674817

6 topshiriq.   Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

x=3

y=5

Natija c= 2.3513346877207573

7 topshiriq.   Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

x=9

y=6

z=7

Natija u= 3244.984976821376

8 topshiriq.   Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

x=8

y=2

Natija v= 0.031174505903554105

9 topshiriq.   Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

z=9

Natija w= 1933.75

10 topshiriq.   Funksiyaning qiymatini hisoblang

Pythonda dastur tuzilishi:

x=3

y=4

z=5

Natija f= -1.4395938061674258

 

DATETIME — SANA VA VAQT

 Ushbu modul yordamida Pythonda sanalar bilan ishlashimiz mumkin. Moduldan foydalanishdan avval uni import qilamiz. Har gal moduldan foydalanishda datetime deb qayta yozmaslik uchun, import qilishda modulga dt nomini beramiz.

import datetime as dt

 

Hozirgi vaqt va sanani koʻrish uchun datetime.now() moduliga murojat qilamiz:

2021-09-16 21:39:19.306789

 

Kurib turganingizdek, natija yil, oy, kun soat, minut, sekund va millisekund koʻrinishida chiqdi. Biz bu qiymatlardan istaganimzni maxsus metodlar yordamida ajratib olishimiz mumkin:

2021-09-16 21:43:03.210374

2021-09-16

21:43:03.210374

21

43

3

Agar bugungi kunning sanasi talab qilinsa datetime moduli ichidagi date.today() moduliga murojat qilamiz.

Bugungi sana: 2021-09-16

Agar biror sanani qoʻlda kiritish talab qilinsa .date() metodiga kerakli sanani (yil, oy, kun) koʻrinishida kiritamiz.

Ertangi sana: 2021-09-17

Faqatgina vaqt bilan ishlash uchun .datetime.now().time() metodiga murojat qilishimiz mumkin:

Hozir soat: 22:07:06.183691

 

Istalgan vaqtni qoʻlda kiritish uchun esa .time() metodiga kerakli vaqtni (soat, minut, sekund),  ikki vaqt oraligʻini sekundlarda yoki soatlarda koʻrinishida beramiz:

Futbol boshlanishiga 5683 sekund qoldi

Futbol boshlanishiga 94 minut qoldi

Futbol boshlanishiga 1 soat qoldi

Yuqorida sanalar AQSh standartiga koʻra, yil-oy-kun koʻrinishida chiqayapti. Sanani oʻzimizga moslab chiqarish uchun .strftime() metodini chaqiramiz, va sanani oʻzimizga qulay formatda chiqaramiz.

Hozir soat: 22:13:13

Bugun sana: 16-09-2021

16/09/2021, 22:13

Mustaqil yechish uchun topshiriqlar


12 izoh

  1. Emma

Izoh qoldirish