To convert a timedelta to seconds in Python, we can use the total_seconds() function on a timedelta object.
import datetime
datetime1 = datetime.datetime(2022,3,5,0,0,0)
datetime2 = datetime.datetime(2022,3,7,0,0,0)
timedelta_object = datetime2 - datetime1
print(timedelta_object.total_seconds())
#Output:
172800.0
When working in Python, many times we need to create variables which represent dates and times. When creating and displaying values related to the difference between two times, it is useful to be able to easily convert to different units (seconds, minutes, hours, etc.)
We can easily convert a timedelta object in Python to seconds.
A timedelta object is created when you find the difference between two datetime objects in Python.
timedelta objects have many great functions, and convert a timedelta object to seconds, we can use the total_seconds() function.
Below is a simple example of how to convert a timedelta to seconds in Python.
import datetime
datetime1 = datetime.datetime(2022,3,5,0,0,0)
datetime2 = datetime.datetime(2022,3,7,0,0,0)
timedelta_object = datetime2 - datetime1
print(timedelta_object.total_seconds())
#Output:
172800.0
Convert timedelta to Minutes and Hours Using Python
We can take the example above and easily convert a timedelta object to minutes or hours.
To convert a timedelta object to minutes, we can divide the call to total_seconds() by 60.
Below is an example in Python of how to convert a timedelta to minutes.
import datetime
datetime1 = datetime.datetime(2022,3,5,0,0,0)
datetime2 = datetime.datetime(2022,3,7,0,0,0)
timedelta_object = datetime2 - datetime1
print(timedelta_object.total_seconds()/60)
#Output:
2880.0
If you instead want to convert a timedelta object to hours, you can divide the call to total_seconds() by 3600.
Below is an example in Python of how to convert a timedelta to hours.
import datetime
datetime1 = datetime.datetime(2022,3,5,0,0,0)
datetime2 = datetime.datetime(2022,3,7,0,0,0)
timedelta_object = datetime2 - datetime1
print(timedelta_object.total_seconds()/3600)
#Output:
48.0
Hopefully this article has been useful for you to use Python to convert a timedelta to seconds.