Python-da döwürleriň tapawudy

Berlen döwürler arasyndaky tapawudy struct_time obyekdini time modulynyň mktime usuly bilen sekuntlara öwürmek arkaly kesgitlemek bolýar.

Geliň, häzirki zaman nokadyny, epoch formatynda berlen we '11/12/2023 19:25' sene bilen tapawudy tapalyň. Ilki bilen time usuly arkaly epoch-y alyň:

pythonnow = time.time()

Soňra berlen senäni strptime usuly bilen öwüriň. Onuň birinji parametrine senäni, ikinji parametrine bolsa onuň formatyny ýazyň:

pythondt = time.strptime('11/12/2023 19:25', '%d/%m/%Y %H:%M')
print(dt)

Netijede biz struct_time obyektini alarys:

pythontime.struct_time(tm_year=2023, tm_mon=12,
      tm_mday=11, tm_hour=19, tm_min=25, tm_sec=0,
      tm_wday=0, tm_yday=345, tm_isdst=-1)

Indi struct_time-i mktime usuly bilen sekuntlara öwüriň we netijäni dt_epoch üýtgeýjisine ýazyň. Şondan soň häzirki döwür bilen dt_epoch arasyndaky tapawudy tapyň. Dogry kod şeýle görünýär:

pythonnow = time.time()
dt = time.strptime('11/12/2023 19:25', '%d/%m/%Y %H:%M')
dt_epoch = time.mktime(dt)

res = now - dt_epoch
print(res) # 7937111.23894763 çykarar

Bu netijeden minut sanyny almak üçin ony 60-a bölmeli:

pythonprint(res / 60) # 132299.33016448814 çykarar
Задание 1

Senä berlen:

pythondt = '24/07/2015 16:1'

Häzirki zaman nokadyndan bu sene çenli geçen sekuntlaryň sanyny tapyň.

Задание 2

Iki sene berlen:

pythondt1 = '12/02/23 10:12:54'
dt2 = '31/12/24 19:38:21'

Ikinji sene bilen birinji sene arasynda geçen sekuntlaryň sanyny tapyň.

Задание 3

Öňki meseläniň çözgüdini üýtgediň, şeýlelik bilen iki sene arasynda geçen günleriň sanyny tapyň.