Tarix və vaxt ilə işləməyə giriş
Gəlin kiçik bir düşüncə ilə başlayaq: təsəvvür edin ki, kompüterlər tarix və vaxt ilə işləyə bilmirlər. Dəhşət! Sevimli cihazlarımız planlaşdırma və tapşırıqların avtomatlaşdırılması işində tamamilə faydasız olardı. İndi isə gəlin anlayaq, necə Python bizə vacib görüşlərə gecikməməyə və rutin tapşırıqların avtomatlaşdırılmasını dəstəkləməyə kömək edir.
Tarix və vaxt ilə işləmə proqramlaşdırmanın ayrılmaz hissəsidir, xüsusən də söhbət avtomatlaşdırmadan gedirsə. Bir vəziyyəti təsəvvür edin: sizdə hesabatlar var ki, onları hər saat yeniləmək lazımdır və ya sizə fasilə etməyin vaxtı gəldiyini xatırlatmalı olan xatırlatmalar var (bəli, artıq 5-ci saatdır ki, monitor qarşısında oturmusunuz!). Python tarix və vaxt ilə işləmək üçün bir çox alətlər təklif edir və bu mühazirədə onları nəzərdən keçirəcəyik.
1. Tarix və Zaman ilə İşləmək üçün Modullar
Python-da tarix və zaman ilə işləmək üçün bir neçə modul mövcuddur. Biz üç əsas modul üzərində dayanacağıq: datetime
, time
və calendar
.
-
datetime
: yəqin ki, tarix və zaman ilə əsas işi məhz bu modul vasitəsilə edəcəyik. O, ayrılıqda tarixlərlə, zamanla, həmçinin onların birləşmələri ilə işləmək üçün siniflər təqdim edir. -
time
: bu modul aşağı səviyyəli zaman nümayəndəlikləri ilə işləmək üçün funksiyalar təqdim edir, adətən, sistem vaxtı ilə çalışır. -
calendar
: təqvimlər ilə işləməyinizə kömək edəcək (yaxşı, burada hər şey aydındır).
datetime
modulunun əsas funksiyaları və sinifləri
Gəlin datetime
moduluna daha dərindən baxaq və onun əsas komponentlərini nəzərdən keçirək.
date
Sinifi
Bu sinif tarixlərlə işləmək üçün istifadə olunur. O, illəri, ayları və günləri təyin etməyə və dəyişdirməyə imkan verir, zamana bağlanmadan.
from datetime import date
# date obyektini yaradın
my_birthday = date(1990, 12, 25)
print("Mənim doğum tarixim:", my_birthday)
time
Sinifi
Bu sinif, adı üstündə, yalnız zaman haqqındadır — saatlar, dəqiqələr, saniyələr. Tarixdən ayrılıqda zaman ilə işləmək lazım olduqda mükəmməldir.
from datetime import time
# time obyektini yaradın
meeting_time = time(14, 30) # 14:30
print("Görüş vaxtı təyin olunub:", meeting_time)
datetime
Sinifi
Tarix və zamanı bir yerdə birləşdirən ən universal sinifdir.
from datetime import datetime
# Cari tarix və zaman
now = datetime.now()
print("Cari tarix və zaman:", now)
2. Cari tarix və vaxtı əldə etmək üçün datetime
modulundan istifadə
Cari tarix və vaxtı əldə etmək - planlama və avtomatlaşdırma üçün əsasdır. datetime
modulunda bunu əldə etmək üçün bir neçə rahat metod var.
Cari tarix və vaxtın əldə edilməsi
datetime.now()
və datetime.today()
metodlarının köməyi ilə siz cari tarix və vaxtı asanlıqla əldə edə bilərsiniz.
now = datetime.now()
print("Cari tarix və vaxt (now):", now)
today = datetime.today()
print("Cari tarix (today):", today)
datetime
obyektləri ilə iş
datetime
obyekti sizə il, ay, gün kimi vaxt komponentlərini əldə etməyə imkan verir. Həmçinin lokal vaxt ilə universal vaxt (UTC) arasında fərqləri yadda saxlamaq vacibdir.
year = now.year
month = now.month
day = now.day
hour = now.hour
minute = now.minute
second = now.second
print(f"Bu gün: {day}/{month}/{year}, və vaxt: {hour}:{minute}:{second}")
Tətbiqlərinizi gerçəkləşdirərkən lokal və UTC vaxt arasındakı fərqi nəzərə almağı unutmayın, çünki dünya böyükdür və hər kəsin öz saatları var!
3. Mövcud tarix və vaxtın real tapşırıqlarda istifadəsinə nümunələr
Tutaq ki, hər saatda bir mənbədən məlumat götürməyiniz lazımdır. Bunu, mövcud vaxtı əvvəlki çıxarışla müqayisə edərək asanlıqla avtomatlaşdırmaq olar. Məsələn:
from datetime import timedelta
last_run = datetime.now() - timedelta(hours=1)
current_time = datetime.now()
# Əgər sonuncu işə salınma bir saatdan çox əvvəl olubsa
if current_time - last_run > timedelta(hours=1):
print("Məlumatları yeniləmək zamanı gəldi!")
last_run = current_time
Bu kod bizə, yalnız bir saatdan çox keçdikdə nəyisə etmək lazım olduğunu effektiv şəkildə xatırladır. Qeyd edin ki, timedelta
-dan vaxt ilə riyazi əməliyyatlar üçün necə rahat istifadə olunur.
GO TO FULL VERSION