Python'до эпохалардын айырмасы

Белгиленген эпохалардын ортосундагы айырманы time модулунун mktime ыкмасы менен struct_time объектин секундага өзгөртүү аркылуу аныктоого болот.

Келгиле, учурдагы убакыттын абалы (epoch форматында берилген) менен '11/12/2023 19:25' датасынын ортосундагы айырманы табайлы. Адегенде time ыкмасы менен epoch алабыз:

pythonnow = time.time()

Андан кийин берилген датаны strptime ыкмасы менен өзгөртөбүз. Анын биринчи параметрине датаны, экинчи параметрине анын форматын жазабыз:

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

Натыйжада биз struct_time объектин алабыз:

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)

Андан ары struct_time объектин mktime ыкмасы менен секундага өзгөртөбүз жана натыйжаны dt_epoch өзгөрмөсүнө жазабыз. Андан кийин учурдагы эпоха менен dt_epoch ортосундагы айырманы табабыз. Толук код төмөнкүдөй болот:

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 чыгарат

Бул натыйжадан мүнөттөрдүн санын алуу үчүн, аны 60кө бөлүү керек:

pythonprint(res / 60) # 132299.33016448814 чыгарат
Задание 1

Дата берилген:

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

Учурдагы убакыттан ушул датага чейин өткөн секундалардын санын табыңыз.

Задание 2

Эки дата берилген:

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

Экинчи дата менен биринчи датанын ортосунда өткөн секундалардын санын табыңыз.

Задание 3

Өткөн маселенин чечимин өзгөртүп, эки датанын ортосунда өткөн күндөрдүн санын табыңыз.