Para encontrar la diferencia entre dos fechas en Python, se puede usar la clase timedelta que está presente en la biblioteca datetime . La clase timedelta almacena la diferencia entre dos objetos de fecha y hora.
Para encontrar la diferencia entre dos fechas en forma de minutos, se puede usar el atributo segundos del objeto timedelta, que se puede dividir por 60 para convertirlo en minutos.
Ejemplo 1:
El siguiente programa toma dos objetos de fecha y hora y encuentra la diferencia entre ellos en minutos.
import datetime # datetime(year, month, day, hour, minute, second) a = datetime.datetime(2017, 6, 21, 18, 25, 30) b = datetime.datetime(2017, 5, 16, 8, 21, 10) # returns a timedelta object c = a-b print('Difference: ', c) minutes = c.total_seconds() / 60 print('Total difference in minutes: ', minutes) # returns the difference of the time of the day minutes = c.seconds / 60 print('Difference in minutes: ', minutes)
Producción:
Difference: 36 days, 10:04:20 Difference in minutes: 604.3333333333334
Ejemplo 2:
para obtener una respuesta más adecuada, se puede usar divmod(), que devolverá la parte fraccionaria de los minutos en términos de segundos:
import datetime # datetime(year, month, day, hour, minute, second) a = datetime.datetime(2017, 6, 21, 18, 25, 30) b = datetime.datetime(2017, 5, 16, 8, 21, 10) # returns a timedelta object c = a-b print('Difference: ', c) # returns (minutes, seconds) minutes = divmod(c.total_seconds(), 60) print('Total difference in minutes: ', minutes[0], 'minutes', minutes[1], 'seconds') # returns the difference of the time of the day (minutes, seconds) minutes = divmod(c.seconds, 60) print('Total difference in minutes: ', minutes[0], 'minutes', minutes[1], 'seconds')
Producción:
Difference: 36 days, 10:04:20 Difference in minutes: 604 minutes 20 seconds
Publicación traducida automáticamente
Artículo escrito por BhavyadeepPurswani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA