Rozdíl epoch v Pythonu
Určit rozdíl mezi zadanými epochami
lze pomocí převodu objektu struct_time
na sekundy metodou mktime modulu
time.
Pojďme najít rozdíl mezi aktuálním
časovým okamžikem, zadaným ve formátu epoch
a datem '11/12/2023 19:25'. Nejprve
získáme epoch pomocí metody time:
now = time.time()
Poté převedeme zadané datum metodou
strptime. Do prvního parametru
zapíšeme datum, do druhého parametru - její
formát:
dt = time.strptime('11/12/2023 19:25', '%d/%m/%Y %H:%M')
print(dt)
Výsledkem bude objekt struct_time:
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)
Dále převedeme struct_time na
sekundy metodou mktime a zapíšeme
výsledek do proměnné dt_epoch.
Poté najdeme rozdíl mezi aktuální
epochou a dt_epoch. Úplný kód bude
vypadat takto:
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) # vypíše 7937111.23894763
Chcete-li z tohoto výsledku získat
počet minut, je třeba jej vydělit
60:
print(res / 60) # vypíše 132299.33016448814
Je dáno datum:
dt = '24/07/2015 16:1'
Najděte počet sekund, které uplynuly od současného časového okamžiku do tohoto data.
Jsou dána dvě data:
dt1 = '12/02/23 10:12:54'
dt2 = '31/12/24 19:38:21'
Najděte počet sekund, které uplynuly mezi druhým a prvním datem.
Upravte řešení předchozí úlohy tak, aby našlo počet dní, které uplynuly mezi dvěma daty.