widget widget - 1 year ago 47
Python Question

How to tell if a date is between two other dates in Python?

I have the following codes:

if date in (start, end):
print 'in between'
print 'No!'

date, start and end are all variables with the format of 1/1. What should I do to have it print out the right result? i tried date as 10/2, start as 3/14 and end as 11/7 and it's print 'No!', which means it's not running right. I guess have to format them to a date format and then compare them. Thanks for any help!

Answer Source

As you are still not satisfied, I have another answer for you. Without using datetime and year.

It just uses built-in tuples and comparing them:

d1 = (3, 28)
d2 = (3, 31)
d3 = (4, 2)
if d1 < d2 < d3:

You can create tuple like these easily:

day = 16
month = 4
d = (month, day)