Python – Comparing Dates in Python

Comparing dates is quite easy in Python. Dates can be easily compared using comparison operators (like <, >, <=, >=, != etc.). Let’s see how to compare dates with the help of datetime module using Python.

Code #1: Basic

# Simple Python program to compare dates
# importing datetime module
import datetime

# date in yyyy/mm/dd format
d1 = datetime.datetime(2018, 5, 3)
d2 = datetime.datetime(2018, 6, 1)

# Comparing the dates will return
# Either True or False
print("d1 is greater than d2 : ", d1 > d2)
print("d1 is less than d2 : ", d1 < d2)
print("d1 is not equal to d2 : ", d1 != d2)

Output :

d1 is greater than d2 :  False
d1 is less than d2 :  True
d1 is not equal to d2 :  True

Code #2: Sorting Dates

One of the best ways to sort a group of dates is to store them into a list and apply sort() method. This will sort all the dates which are available in the list. One can store the date class objects into the list using append() method.

# Python program to sort the dates

# importing datetime module
from datetime import *

# create empty list
group = []

# add today's date
group.append(date.today())

# create some more dates
d = date(2015, 6, 29)
group.append(d)

d = date(2011, 4, 7)
group.append(d)

# add 25 days to the date
# and add to the list
group.append(d + timedelta(days = 25))

# sort the list
group.sort()

# print the dates
for d in group:
	print(d)

Output :

2011-04-07
2011-05-02
2015-06-29
2018-05-24

Code #3: Comparing Dates

Compare two date class objects, just like comparing two numbers.

# importing datetime module
from datetime import *

# Enter birth dates and store
# into date class objects
d1, m1, y1 = [int(x) for x in input("Enter first"
		" person's date(DD/MM/YYYY) : ").split('/')]

b1 = date(y1, m1, d1)

# Input for second date
d2, m2, y2 = [int(x) for x in input("Enter second"
		" person's date(DD/MM/YYYY) : ").split('/')]

b2 = date(y2, m2, d2)

# Check the dates
if b1 == b2:
	print("Both persons are of equal age")
	
elif b1 > b2:
	print("The second person is older")
	
else:
	print("The first person is older")

Output :

Enter first person's date(DD/MM/YYYY) : 12/05/2017
Enter second person's date(DD/MM/YYYY) : 10/11/2015
The second person is older

 

Leave a Comment