【发布时间】:2020-06-23 12:58:31
【问题描述】:
如何确定一年中的第一个营业日期?我正在尝试使用
`Import holidays
HOLIDAYS= holidays.US()`
【问题讨论】:
标签: python
如何确定一年中的第一个营业日期?我正在尝试使用
`Import holidays
HOLIDAYS= holidays.US()`
【问题讨论】:
标签: python
我会首先使用this existing StackOverflow 答案来获取一年中的第一个星期一,然后使用假期模块按holidays 过滤。
import datetime
import holidays
us_holidays = holidays.UnitedStates()
def next_workday(start_date, weekday=0):
"""
Weekday is an integer. 0=Monday, 1=Tuesday, etc.
"""
start_date -= datetime.timedelta(days=1) # Go back 1 to be inclusive of the start date itself
days_ahead = weekday - start_date.weekday()
if days_ahead <= 0: # Target day already happened this week
days_ahead += 7
start_date = start_date + datetime.timedelta(days_ahead)
while 1:
if start_date in us_holidays:
start_date += datetime.timedelta(1)
else:
return start_date
for i in range(100):
year = 2000 + i
print(f'First workday of {year} is', next_workday(datetime.date(year, 1, 1)))
【讨论】: