Python - Sana va Vaqt
Python Sanalari
Python'da sana o'ziga xos ma'lumot turi emas, lekin biz datetime nomli modulni import qilib, sanalar bilan sana obyektlari sifatida ishlashimiz mumkin.
Misol
datetime modulini import qiling va joriy sanani ko'rsating:
import datetime
x = datetime.datetime.now()
print(x)Sana Chiqishi
Yuqoridagi misoldagi kodni bajarsak, natija quyidagicha bo'ladi: 2025-02-25 09:06:00.436190
Sana yil, oy, kun, soat, daqiqa, soniya va mikrosoniyani o'z ichiga oladi.
datetime moduli sana obyekti haqida ma'lumot qaytaradigan ko'plab metodlarga ega.
Mana bir nechta misollar, siz ular haqida ushbu bo'limda keyinroq ko'proq bilib olasiz:
Misol
Yil va hafta kuni nomini qaytarish:
import datetime
x = datetime.datetime.now()
print(x.year)
print(x.strftime("%A"))Sana obyektlarini Yaratish
Sana yaratish uchun datetime modulining datetime() sinfidan (konstruktoridan) foydalanishimiz mumkin.
datetime() sinfi sanani yaratish uchun uchta parametrni talab qiladi: yil, oy, kun.
Misol
Sana obyektini yaratish:
import datetime
x = datetime.datetime(2020, 5, 17)
print(x)datetime() sinfi vaqt va vaqt mintaqasi uchun parametrlarni ham qabul qiladi (soat, daqiqa, soniya, mikrosoniya, vaqt_mintaqasi), lekin ular ixtiyoriy bo'lib, standart qiymatlari 0 (vaqt mintaqasi uchun None).
strftime() Metodi
Sana obyekti o'qiladigan satrlarga formatlash uchun metodga ega.
Bu metod strftime() deb ataladi va qaytariladigan satr formatini belgilash uchun bitta parametr, ya'ni formatni qabul qiladi:
Misol
Oy nomini ko'rsatish:
import datetime
x = datetime.datetime(2018, 6, 1)
print(x.strftime("%B"))Barcha qonuniy format kodlari haqida ma'lumotnoma:
| Direktiva | Tavsif | Misol |
|---|---|---|
%a | Hafta kuni, qisqa versiya | Chor |
%A | Hafta kuni, to'liq versiya | Chorshanba |
%w | Hafta kuni raqam sifatida 0-6, 0 yakshanba | 3 |
%d | Oy kuni 01-31 | 31 |
%b | Oy nomi, qisqa versiya | Dek |
%B | Oy nomi, to'liq versiya | Dekabr |
%m | Oy raqam sifatida 01-12 | 12 |
%y | Yil, qisqa versiya, asrsiz | 18 |
%Y | Yil, to'liq versiya | 2018 |
%H | Soat 00-23 | 17 |
%I | Soat 00-12 | 05 |
%p | AM/PM | PM |
%M | Daqiqa 00-59 | 41 |
%S | Soniya 00-59 | 08 |
%f | Mikrosoniya 000000-999999 | 548513 |
%z | UTC siljishi | +0100 |
%Z | Vaqt mintaqasi | CST |
%j | Yilning kun raqami 001-366 | 365 |
%U | Yilning hafta raqami, yakshanba haftaning birinchi kuni, 00-53 | 52 |
%W | Yilning hafta raqami, dushanba haftaning birinchi kuni, 00-53 | 52 |
%c | Mahalliy sana va vaqt versiyasi | Dush Dek 31 17:41:00 2018 |
%C | Asr | 20 |
%x | Mahalliy sana versiyasi | 12/31/18 |
%X | Mahalliy vaqt versiyasi | 17:41:00 |
%% | % belgisi | % |
%G | ISO 8601 yili | 2018 |
%u | ISO 8601 hafta kuni (1-7) | 1 |
%V | ISO 8601 hafta raqami (01-53) | 01 |
