Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import time
- from datetime import datetime , timedelta
- from dateutil.rrule import rrule, MONTHLY, DAILY
- date_start_obj = datetime(2018,05,18)
- date_end_obj = datetime(2018,05,30)
- # holidays = [datetime(2018,05,21).date(), datetime(2018,05,28).date(), datetime(2018,05,20).date()]
- def get_working_days(date_start_obj, date_end_obj, holidays=[]):
- many_holidays = 0
- span = date_end_obj - date_start_obj
- for i in xrange(span.days + 1):
- _date = date_start_obj + timedelta(days=i)
- if _date.date() in holidays and _date.weekday() in range(0, 5):
- print _date.date()
- many_holidays += 1
- weekdays = rrule(DAILY, byweekday=range(0, 5), dtstart=date_start_obj, until=date_end_obj)
- weekdays = len(list(weekdays))
- # desconsiderar do dia start
- return (weekdays -1) - many_holidays
- get_working_days(date_start_obj, date_end_obj, holidays)
Add Comment
Please, Sign In to add comment