timedelta — miqdor shaklidagi kun, sekund va millisekundlar;
date — sanalarni obyekt tipida ifodalash;
time — vaqtni obyekt tipida ifodalash;
datetime — vaqt va sanani obyekt tipida ifodalash;
tzinfo — abstrakt klass boʻlib, vaqt zonasi uchun mas’ul.
Datetime modulining konstruktori quyidagicha:
timedelta([days][, seconds][, microseconds][, milliseconds][, minutes][, hours] [, weeks])
Bu parametrlarning barchasi majburiy emas va u toʻgʻridan-toʻgʻri 0 ga teng boʻladi. Dastlabki uchta argument asosiy hisoblanadi:
♦ days —kunlar (-999999999 <= days <= 999999999);
♦ seconds — sekundlar (0 <= seconds < 3600*24);
♦ microseconds — mikrosekundlar (0 <= microseconds < 1000000).
Argumentlarning qiymatlari vergullar bilan ajratilgan holda, tartibga mos ravishda e’lon qilinadi. Masalan:
>>> datetime.timedelta(0, 0, 0, 0, 0, 1).
Natijalarni days, seconds, microseconds hususiyatlari orqali olish mumkin. Masalan:
>>> d.days, d.seconds, d.microseconds
Natijalarni sekundlarda olish uchun total_seconds() funksiyasidan foydalaniladi.
Timedelta klassi ob`ektlari ustida +, -, /, //, % va * kabi arifmetik amallar hamda absolyut qiymatlar bilan ishlash mumkin. Bundan tashqari, =, !=, <, <=, > hamda >= kabi taqqoslash amallarini bajarish mumkin:
import datetime
d1 = datetime. timedelta (days=2)
d2 = datetime.timedelta(days=7)
print('Arifmetik amallar :', d1 + d2, d2 - d1, d2/d1, d2//d1)
print('Taqqoslash natijalari :', d1==d2, d1>d2, d1:=d2)
Timedelta klassi nusxasining satrli koʻrinishini str() yoki repr() fumksiyalari yordamida hosil qilish mumkin:
>>> d = datetime.timedelta(hours=25, minutes=5, seconds=27)
>>> str(d)
1 day, 1:05:27'
10.4.2. Date klassi
Date klassi metodlari sanalar ustida amallar bajarish imkonini beradi. Uning umumiy koʻrinishi quyidagicha:
date(, , ).
Barcha parametrlar majburiy boʻlib, diapazoni yillar uchun ‑ 1…9999, oylar uchun ‑ 1..12, kunlar esa 1 dan oydagi kunlar sonigacha. Agar argumentlarning qiymati bu diapazondan chetga chiqadigan boʻlsa, istisnoli vaziyat yuzaga keladi.
>>> d = datetime.date (2017, 11, 21)
>>> repr(d), str(d)
('datetime.date(2017, 11, 21)', '2017-11-21')
Date klassi nusxalari bilan ishlaganda quyidagi metodlardan foydalanish mumkin:
today ()
|
joriy sanani qaytaradi.
|
fromtimestamp()
|
davr boshidan boshlab oʻtgan sekundlarga mos sana.
|
fromordinal()
|
davr boshidan boshlab oʻtgan kunlarga mos sana.
|
replace ([year] [, month] [, day])
|
Sananing koʻrsatilgan parametrlarini almashtirish orqali yangilash.
|
strftime()
|
sanaga mos satr uchun bichim.
|
isoformat ()
|
sanani yil-oy-kun bichimida qaytaradi.
|
ctime()
|
sana "%a %b %d %H:%M:%S %Y" bichimida qaytariladi.
|
timetuple ()
|
|
Do'stlaringiz bilan baham: |