如何用Python获取指定年份的首个工作日(不含周末)日期?
获取指定年份的首个工作日(Python实现)
要获取指定年份的首个工作日,我们可以从该年的1月1日开始判断:如果当天是周一至周五,直接返回;如果是周末,则顺延到下一个周一。
实现代码
from datetime import datetime, timedelta def get_first_workday(year): # 初始化日期为指定年份的1月1日 first_day = datetime(year, 1, 1) # 判断是否为周末:isoweekday()返回1=周一,7=周日 if first_day.isoweekday() == 6: # 周六 first_day += timedelta(days=2) elif first_day.isoweekday() == 7: # 周日 first_day += timedelta(days=1) return first_day # 示例:获取2025年的首个工作日 print(get_first_workday(2025))
关于你提供的当前周首个周一的代码
你给出的获取当前周第一个周一的代码逻辑简洁有效,整理后的版本如下:
from datetime import datetime, timedelta test = datetime.today() - timedelta(days=datetime.today().isoweekday() % 7) print(test)
这段代码通过计算当前日期与本周一的天数差,反向推导出周一的日期。
内容的提问来源于stack exchange,提问作者slc1axj
相关产品推荐
相关产品推荐

