Home >Backend Development >Python Tutorial >How to Calculate the Time Difference Between Two DateTime Objects in Python?
Calculating Time Difference between Two Datetime Objects in Python
Determining the time difference between two datetime objects is essential in various programming scenarios. In Python, there are several straightforward methods for achieving this.
Method: Subtracting Datetime Objects
The standard approach involves subtracting the later datetime object from the earlier one. This operation results in a datetime object that represents the time duration between the two input dates.
import datetime first_time = datetime.datetime.now() later_time = datetime.datetime.now() difference = later_time - first_time
The resulting difference object holds the time difference in terms of days, seconds, microseconds, etc. To obtain the difference in minutes, additional calculations are necessary.
Conversion to Minutes:
Convert the time duration to seconds by multiplying the days and seconds components.
seconds_in_day = 24 * 60 * 60 total_seconds = difference.days * seconds_in_day + difference.seconds
Calculate the number of minutes by dividing the total seconds by 60.
divmod(total_seconds, 60)
The output will be a tuple containing the number of minutes and any remaining seconds (which can be ignored in this scenario).
Example:
>>> import datetime >>> first_time = datetime.datetime.now() >>> later_time = datetime.datetime.now() >>> difference = later_time - first_time datetime.timedelta(0, 8, 562000) >>> seconds_in_day = 24 * 60 * 60 >>> divmod(difference.days * seconds_in_day + difference.seconds, 60) (0, 8) # 0 minutes, 8 seconds
This example subtracts two datetime objects representing almost the same time. The result is a time duration of 0 minutes and 8 seconds, which is correctly calculated using the above approach.
The above is the detailed content of How to Calculate the Time Difference Between Two DateTime Objects in Python?. For more information, please follow other related articles on the PHP Chinese website!