# Calculation of remaining time until birthday

The following program calculates the days, minutes and seconds between two dates. To calculate the seconds, the `total_seconds()` method is called through the timedelta object.

``````from datetime import datetime

today = datetime(2022,12,15)
bday = datetime(2023,3,20)

difference = bday - today

print(str(difference) + " days until your birthday")
print(str(difference.total_seconds()/60) + " minutes until your birthday")
print(str(difference.total_seconds()) + " seconds until your birthday")``````
##### Code Explanation
###### Creating Datetime Objects
• `today`: This variable is assigned a datetime object representing December 15, 2022. This datetime object is created using specific year, month, and day values, representing the current date for the purpose of the calculation.
• `bday`: Similarly, this variable holds a datetime object for March 20, 2023, set as the target future date, such as a birthday.
###### Calculating the Difference Between Dates
• `difference`: This is a `timedelta` object obtained by subtracting `today` from `bday`. The resulting `timedelta` object represents the time span between these two dates.
###### Printing the Time Until the Birthday
• The first print statement converts `difference` to a string that naturally represents the duration in days (and potentially hours, minutes, and seconds, though days are the primary unit here). It appends ” days until your birthday” to this string, providing a user-friendly message indicating the number of days until the birthday.
• The second print statement displays the total time until the birthday in minutes. It achieves this by calling `difference.total_seconds()` to get the total duration in seconds and then dividing by 60 to convert this duration to minutes. The result is converted to a string and concatenated with ” minutes until your birthday”, offering a detailed minute count down to the event.
• The third print statement simply prints the total duration in seconds, accessed by `difference.total_seconds()`. This value is converted to a string and appended with ” seconds until your birthday”, providing a precise second-by-second countdown to the birthday.
##### Output
``````95 days, 0:00:00 days until your birthday