Skip to content
Related Articles

Related Articles

Comparing dates in Python

Improve Article
Save Article
  • Difficulty Level : Medium
  • Last Updated : 24 May, 2018
Improve Article
Save Article

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

My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!