Tidsforskjell mellom epoker i Python
Du kan bestemme forskjellen mellom gitte epoker
ved å konvertere et struct_time-objekt
til sekunder ved hjelp av mktime-metoden
fra time-modulen.
La oss finne forskjellen mellom det nåværende
tidspunktet, gitt i epoch-format,
og datoen '11/12/2023 19:25'. Først
henter vi epoch ved hjelp av time-metoden:
now = time.time()
Deretter konverterer vi den gitte datoen med
strptime-metoden. I den første parameteren
setter vi datoen, i den andre parameteren - dens
format:
dt = time.strptime('11/12/2023 19:25', '%d/%m/%Y %H:%M')
print(dt)
Som et resultat får vi et struct_time-objekt:
time.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)
Deretter konverterer vi struct_time til
sekunder med mktime-metoden og skriver
resultatet til variabelen dt_epoch.
Etter det finner vi forskjellen mellom den
nåværende epoken og dt_epoch. Den fullstendige koden
vil se slik ut:
now = 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) # vil skrive ut 7937111.23894763
For å få antall minutter fra dette resultatet,
må du dele det på
60:
print(res / 60) # vil skrive ut 132299.33016448814
Gitt en dato:
dt = '24/07/2015 16:1'
Finn antall sekunder som har gått fra det nåværende tidspunktet til denne datoen.
Gitt to datoer:
dt1 = '12/02/23 10:12:54'
dt2 = '31/12/24 19:38:21'
Finn antall sekunder som har gått mellom den andre og den første datoen.
Modifiser løsningen på den forrige oppgaven for å finne antall dager som har gått mellom de to datoene.