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.

Categorized in:

Python,

Last Update: March 13, 2024