Python中如何计算两个日期之间的工作日天数:利用datetime()函数
发布时间:2023-12-16 12:27:45
在Python中,我们可以使用datetime模块来计算两个日期之间的工作日天数。下面是一个示例,其中使用了datetime模块的date()和timedelta()函数:
from datetime import date, timedelta
def count_workdays(start_date, end_date):
"""
计算两个日期之间的工作日天数
:param start_date: 开始日期,格式为YYYY-MM-DD
:param end_date: 结束日期,格式为YYYY-MM-DD
:return: 工作日天数
"""
start = date.fromisoformat(start_date)
end = date.fromisoformat(end_date)
# 确保开始日期早于结束日期
if start > end:
start, end = end, start
count = 0
current_date = start
while current_date <= end:
if current_date.weekday() < 5: # 周一到周五为工作日
count += 1
current_date += timedelta(days=1)
return count
让我们来看一个使用示例:
print(count_workdays('2022-01-01', '2022-12-31'))
这将输出2022年1月1日到2022年12月31日之间的工作日天数。
请注意,这个方法假设周一到周五为工作日,而周六和周日为非工作日。如果你的工作日定义有所不同,你可以根据需要进行修改。
