Class approach

Get the difference of days, months and years between 2 dates

Import DateAssistant

First, import DateAssistant from date_assistant, it will grant you access to all the main methods:

from date_assistant import DateAssistant


my_birthday_2021 = DateAssistant('2021-07-13')
date_assistant_birthday = '2021-08-18'

my_birthday_2021.days_diff_with(date_assistant_birthday)
# 36
my_birthday_2021.months_diff_with(date_assistant_birthday)
# 1
my_birthday_2021.years_diff_with(date_assistant_birthday)
# 0

Instantiate the class and define another date as string

You don’t actually need to define another variable, but it will improve the readability:

from date_assistant import DateAssistant


my_birthday_2021 = DateAssistant('2021-07-13')
date_assistant_birthday = '2021-08-18'

my_birthday_2021.days_diff_with(date_assistant_birthday)
# 36
my_birthday_2021.months_diff_with(date_assistant_birthday)
# 1
my_birthday_2021.years_diff_with(date_assistant_birthday)
# 0

Use the methods

Now execute the methods to get the answer as an integer:

from date_assistant import DateAssistant


my_birthday_2021 = DateAssistant('2021-07-13')
date_assistant_birthday = '2021-08-18'

my_birthday_2021.days_diff_with(date_assistant_birthday)
# 36
my_birthday_2021.months_diff_with(date_assistant_birthday)
# 1
my_birthday_2021.years_diff_with(date_assistant_birthday)
# 0

You can indicate the format of both of your dates, on the __init__ method for the base date and on each operation method when using another date (exactly as the Functions approach).

Note

💡 Please consider that the default date format is '%Y-%m-%d', eg: '2021-12-25'. Anyways, you can indicate the format of your date if you need to.