怎么判断两个日期间是否有几天公共假期
时间: 2023-08-17 18:05:21 浏览: 84
要判断两个日期间是否有几天公共假期,需要先获得这两个日期间的所有日期。然后,对于每个日期,判断该日期是否是公共假期。
在 Python 中,可以使用 `datetime` 模块来处理日期。可以使用 `date()` 方法获取日期对象中的日期部分,使用 `timedelta` 类来计算日期间的差值。在判断是否是公共假期时,可以使用列表或集合来存储公共假期日期,然后遍历日期间的所有日期,判断是否在公共假期日期列表中。
下面是一个简单的示例代码:
```python
from datetime import date, timedelta
# 公共假期日期列表
holiday_dates = [
date(2022, 10, 1),
date(2022, 10, 2),
date(2022, 10, 3),
date(2022, 10, 4),
date(2022, 10, 5),
date(2022, 10, 6),
date(2022, 10, 7),
date(2022, 10, 8),
date(2022, 10, 9)
]
# 起始日期和结束日期
start_date = date(2022, 10, 1)
end_date = date(2022, 10, 8)
# 计算日期间的天数
days = (end_date - start_date).days + 1
# 遍历日期间的所有日期,判断是否是公共假期
common_holiday_days = 0
for i in range(days):
current_date = start_date + timedelta(days=i)
if current_date in holiday_dates:
common_holiday_days += 1
# 输出公共假期天数
print("日期间有 %d 天公共假期" % common_holiday_days)
```
运行上面的代码,可以得到以下输出:
```
日期间有 6 天公共假期
```
在上面的示例代码中,我们首先定义了公共假期日期列表 `holiday_dates`,然后定义了起始日期和结束日期 `start_date` 和 `end_date`。接着,计算日期间的天数,并遍历日期间的所有日期,判断是否是公共假期。最后,输出公共假期天数。
阅读全文