in

Get Dates of Working Days Between Two Dates in Python (Exclude Weekends)

Here I am giving an example to show you how to get dates of working days between two dates in Python by excluding weekends.

Python Workdays Example

In the below Python program, it will take three parameters, 1st is the start date, 2nd is the end date, and the third is default specified the day numbers 6 and 7, for Saturday and Sundays.

import datetime

def workdays(d, end, excluded=(6, 7)):
    days = []
    while d.date() <= end.date():
        if d.isoweekday() not in excluded:
            days.append(d)
        d += datetime.timedelta(days=1)
    return days

print(workdays(datetime.datetime(2019, 1, 21),
               datetime.datetime(2019, 1, 30)))

Output

[datetime.datetime(2019, 1, 21, 0, 0), datetime.datetime(2019, 1, 22, 0, 0), datetime.datetime(2019, 1, 23, 0, 0), datetime.datetime(2019, 1, 24, 0, 0), datetime.datetime(2019, 1, 25, 0, 0), datetime.datetime(2019, 1, 28, 0, 0), datetime.datetime(2019, 1, 29, 0, 0), datetime.datetime(2019, 1, 30, 0, 0)]

You can see in the above result that the weekend dates 26th (Saturday) and 27th (Sunday) of January 2019 are not present.

What do you think?

289 Points
Upvote Downvote
Continue Statement in PHP

Continue Statement in PHP

Top 50 PHP Questions and Answers

Top 50 PHP Interview Questions and Answers Could Help You