Exemples de comment obtenir la difference en minutes entre deux dates en python:
1 -- Créer deux dates différentes
Créons tout d'abord deux dates time1 et time2 comme ceci en utilisant le module python datetime:
import datetimeyear = 2008month = 7day = 8hour = 12minute = 47second = 0time1 = datetime.datetime(year,month,day,hour,minute,second)hour = 14minute = 20time2 = datetime.datetime(year,month,day,hour,minute,second)
2 -- Exemple 1 en utilisant la fonction total_seconds()
On peut alors calculer la difference entre ces deux dates comme ceci
time_delta = time2 - time1
puis en extraire la difference en secondes:
delta_in_seconds = time_delta.total_seconds()print(delta_in_seconds)5580.0
que l'on peut ensuite facilement convertit en minutes en divisant par 60 (car 1 minute = 60 secondes):
delta_in_minutes = delta_in_seconds / 60.print(delta_in_minutes)
ce qui donne
93.0
minutes de differences entre time1 et time2.
3 -- Exemple 2
Autre exemple:
delta_in_seconds = time_delta.secondsprint(delta_in_seconds)delta_in_minutes = delta_in_seconds / 60.print(delta_in_minutes)
4 -- Obtenir la fraction d'une minute
Si la difference en minutes entre les deux dates n'est pas un entier, une solution est d'utiliser divmod():
hour = 14minute = 20second = 25time2 = datetime.datetime(year,month,day,hour,minute,second)time_delta = time2 - time1delta_in_seconds = time_delta.total_seconds()delta_in_minutes = divmod(delta_in_seconds, 60)print(delta_in_minutes)print('Time difference : {} minutes and {} seconds'.format(delta_in_minutes[0],delta_in_minutes[1]))
donne
(93.0, 25.0)Time difference : 93.0 minutes and 25.0 seconds
